diff --git a/README.md b/README.md index d5ae312..7bf2599 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,5 @@ We actively welcome bug reports, suggestions, and code contributions! ### Setup * git clone... * `npm install` -* `npm run truffle:install` * `npm run truffle:compile` * `npm run lint:sol` diff --git a/build/contracts/AttributeStore.json b/build/contracts/AttributeStore.json index c2ae3a4..2129061 100644 --- a/build/contracts/AttributeStore.json +++ b/build/contracts/AttributeStore.json @@ -55,32 +55,31 @@ "type": "function" } ], - "bytecode": "0x6102e7610030600b82828239805160001a6073146000811461002057610022565bfe5b5030600052607381538281f3007300000000000000000000000000000000000000003014608060405260043610610063576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806350389f5c14610068578063977aa031146100f0575b600080fd5b6100da600480360381019080803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061017b565b6040518082815260200191505060405180910390f35b8180156100fc57600080fd5b50610179600480360381019080803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192908035906020019092919050505061021b565b005b600080838360405180836000191660001916815260200182805190602001908083835b6020831015156101c3578051825260208201915060208101905060208303925061019e565b6001836020036101000a03801982511681845116808217855250505050505090500192505050604051809103902090508460000160008260001916600019168152602001908152602001600020549150509392505050565b6000838360405180836000191660001916815260200182805190602001908083835b602083101515610262578051825260208201915060208101905060208303925061023d565b6001836020036101000a03801982511681845116808217855250505050505090500192505050604051809103902090508185600001600083600019166000191681526020019081526020016000208190555050505050505600a165627a7a723058203e999c16bfe9b614e1f8b73b4882892df9f7099033ffc242a2b3dee4b52c54bc0029", - "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610063576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806350389f5c14610068578063977aa031146100f0575b600080fd5b6100da600480360381019080803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061017b565b6040518082815260200191505060405180910390f35b8180156100fc57600080fd5b50610179600480360381019080803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192908035906020019092919050505061021b565b005b600080838360405180836000191660001916815260200182805190602001908083835b6020831015156101c3578051825260208201915060208101905060208303925061019e565b6001836020036101000a03801982511681845116808217855250505050505090500192505050604051809103902090508460000160008260001916600019168152602001908152602001600020549150509392505050565b6000838360405180836000191660001916815260200182805190602001908083835b602083101515610262578051825260208201915060208101905060208303925061023d565b6001836020036101000a03801982511681845116808217855250505050505090500192505050604051809103902090508185600001600083600019166000191681526020019081526020016000208190555050505050505600a165627a7a723058203e999c16bfe9b614e1f8b73b4882892df9f7099033ffc242a2b3dee4b52c54bc0029", - "sourceMap": "27:507:3:-;;132:2:-1;166:7;155:9;146:7;137:37;252:7;246:14;243:1;238:23;232:4;229:33;270:1;265:20;;;;222:63;;265:20;274:9;222:63;;298:9;295:1;288:20;328:4;319:7;311:22;352:7;343;336:24", - "deployedSourceMap": "27:507:3:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;126:199;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;333:198;;8:9:-1;5:2;;;30:1;27;20:12;5:2;333:198:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;126:199;226:4;243:11;267:5;274:9;257:27;;;;;;;;;;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;257:27:3;;;;;;;;;;;;;;;;;243:41;;302:4;:10;;:15;313:3;302:15;;;;;;;;;;;;;;;;;;295:22;;126:199;;;;;;:::o;333:198::-;445:11;469:5;476:9;459:27;;;;;;;;;;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;459:27:3;;;;;;;;;;;;;;;;;445:41;;515:8;497:4;:10;;:15;508:3;497:15;;;;;;;;;;;;;;;;;:26;;;;333:198;;;;;:::o", - "source": "pragma solidity^0.4.11;\r\n\r\nlibrary AttributeStore {\r\n struct Data {\r\n mapping(bytes32 => uint) store;\r\n }\r\n\r\n function getAttribute(Data storage self, bytes32 _UUID, string _attrName)\r\n public view returns (uint) {\r\n bytes32 key = keccak256(_UUID, _attrName);\r\n return self.store[key];\r\n }\r\n\r\n function setAttribute(Data storage self, bytes32 _UUID, string _attrName, uint _attrVal)\r\n public {\r\n bytes32 key = keccak256(_UUID, _attrName);\r\n self.store[key] = _attrVal;\r\n }\r\n}\r\n", - "sourcePath": "attrstore/AttributeStore.sol", + "bytecode": "0x6103bf610030600b82828239805160001a6073146000811461002057610022565bfe5b5030600052607381538281f3007300000000000000000000000000000000000000003014608060405260043610610063576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806350389f5c14610068578063977aa031146100f0575b600080fd5b6100da600480360381019080803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061017b565b6040518082815260200191505060405180910390f35b8180156100fc57600080fd5b50610179600480360381019080803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190505050610287565b005b600080838360405160200180836000191660001916815260200182805190602001908083835b6020831015156101c657805182526020820191506020810190506020830392506101a1565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040526040518082805190602001908083835b602083101515610230578051825260208201915060208101905060208303925061020b565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090508460000160008260001916600019168152602001908152602001600020549150509392505050565b6000838360405160200180836000191660001916815260200182805190602001908083835b6020831015156102d157805182526020820191506020810190506020830392506102ac565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040526040518082805190602001908083835b60208310151561033b5780518252602082019150602081019050602083039250610316565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090508185600001600083600019166000191681526020019081526020016000208190555050505050505600a165627a7a723058204122d2ae8a5f7124771b2c565fe950884c6a6c74ad1fca39d3dcb4f83dbe66b10029", + "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610063576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806350389f5c14610068578063977aa031146100f0575b600080fd5b6100da600480360381019080803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061017b565b6040518082815260200191505060405180910390f35b8180156100fc57600080fd5b50610179600480360381019080803590602001909291908035600019169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190505050610287565b005b600080838360405160200180836000191660001916815260200182805190602001908083835b6020831015156101c657805182526020820191506020810190506020830392506101a1565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040526040518082805190602001908083835b602083101515610230578051825260208201915060208101905060208303925061020b565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090508460000160008260001916600019168152602001908152602001600020549150509392505050565b6000838360405160200180836000191660001916815260200182805190602001908083835b6020831015156102d157805182526020820191506020810190506020830392506102ac565b6001836020036101000a038019825116818451168082178552505050505050905001925050506040516020818303038152906040526040518082805190602001908083835b60208310151561033b5780518252602082019150602081019050602083039250610316565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902090508185600001600083600019166000191681526020019081526020016000208190555050505050505600a165627a7a723058204122d2ae8a5f7124771b2c565fe950884c6a6c74ad1fca39d3dcb4f83dbe66b10029", + "sourceMap": "26:510:0:-;;132:2:-1;166:7;155:9;146:7;137:37;252:7;246:14;243:1;238:23;232:4;229:33;270:1;265:20;;;;222:63;;265:20;274:9;222:63;;298:9;295:1;288:20;328:4;319:7;311:22;352:7;343;336:24", + "deployedSourceMap": "26:510:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;110:203;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;317:217;;8:9:-1;5:2;;;30:1;27;20:12;5:2;317:217:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;110:203;207:4;221:11;262:5;269:9;245:34;;;;;;;;;;;;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;245:34:0;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;245:34:0;;;235:45;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;235:45:0;;;;;;;;;;;;;;;;221:59;;293:4;:10;;:15;304:3;293:15;;;;;;;;;;;;;;;;;;286:22;;110:203;;;;;;:::o;317:217::-;438:11;479:5;486:9;462:34;;;;;;;;;;;;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;462:34:0;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;462:34:0;;;452:45;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;452:45:0;;;;;;;;;;;;;;;;438:59;;521:8;503:4;:10;;:15;514:3;503:15;;;;;;;;;;;;;;;;;:26;;;;317:217;;;;;:::o", + "source": "pragma solidity 0.4.24;\n\n\nlibrary AttributeStore {\n struct Data {\n mapping(bytes32 => uint) store;\n }\n\n function getAttribute(Data storage self, bytes32 _UUID, string _attrName)\n public view returns (uint)\n {\n bytes32 key = keccak256(abi.encodePacked(_UUID, _attrName));\n return self.store[key];\n }\n\n function setAttribute(\n Data storage self,\n bytes32 _UUID,\n string _attrName,\n uint _attrVal) public\n {\n bytes32 key = keccak256(abi.encodePacked(_UUID, _attrName));\n self.store[key] = _attrVal;\n }\n}\n", + "sourcePath": "/home/rob/Github/computable/contracts/AttributeStore.sol", "ast": { - "absolutePath": "attrstore/AttributeStore.sol", + "absolutePath": "/home/rob/Github/computable/contracts/AttributeStore.sol", "exportedSymbols": { "AttributeStore": [ - 2165 + 64 ] }, - "id": 2166, + "id": 65, "nodeType": "SourceUnit", "nodes": [ { - "id": 2108, + "id": 1, "literals": [ "solidity", - "^", "0.4", - ".11" + ".24" ], "nodeType": "PragmaDirective", - "src": "0:23:3" + "src": "0:23:0" }, { "baseContracts": [], @@ -88,24 +87,24 @@ "contractKind": "library", "documentation": null, "fullyImplemented": true, - "id": 2165, + "id": 64, "linearizedBaseContracts": [ - 2165 + 64 ], "name": "AttributeStore", "nodeType": "ContractDefinition", "nodes": [ { "canonicalName": "AttributeStore.Data", - "id": 2113, + "id": 6, "members": [ { "constant": false, - "id": 2112, + "id": 5, "name": "store", "nodeType": "VariableDeclaration", - "scope": 2113, - "src": "80:30:3", + "scope": 6, + "src": "71:30:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -113,28 +112,28 @@ "typeString": "mapping(bytes32 => uint256)" }, "typeName": { - "id": 2111, + "id": 4, "keyType": { - "id": 2109, + "id": 2, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "88:7:3", + "src": "79:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "80:24:3", + "src": "71:24:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" }, "valueType": { - "id": 2110, + "id": 3, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "99:4:3", + "src": "90:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -147,28 +146,28 @@ ], "name": "Data", "nodeType": "StructDefinition", - "scope": 2165, - "src": "57:61:3", + "scope": 64, + "src": "53:53:0", "visibility": "public" }, { "body": { - "id": 2136, + "id": 32, "nodeType": "Block", - "src": "232:93:3", + "src": "215:98:0", "statements": [ { "assignments": [ - 2125 + 18 ], "declarations": [ { "constant": false, - "id": 2125, + "id": 18, "name": "key", "nodeType": "VariableDeclaration", - "scope": 2137, - "src": "243:11:3", + "scope": 33, + "src": "221:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -176,10 +175,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2124, + "id": 17, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "243:7:3", + "src": "221:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -189,60 +188,112 @@ "visibility": "internal" } ], - "id": 2130, + "id": 26, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2127, - "name": "_UUID", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2117, - "src": "267:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 2128, - "name": "_attrName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2119, - "src": "274:9:3", + "arguments": [ + { + "argumentTypes": null, + "id": 22, + "name": "_UUID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10, + "src": "262:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 23, + "name": "_attrName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12, + "src": "269:9:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 20, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "245:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "245:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 24, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "245:34:0", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2126, + "id": 19, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "257:9:3", + "referencedDeclaration": 3696, + "src": "235:9:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2129, + "id": 25, "isConstant": false, "isLValue": false, "isPure": false, @@ -250,14 +301,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "257:27:3", + "src": "235:45:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "243:41:3" + "src": "221:59:0" }, { "expression": { @@ -266,40 +317,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2131, + "id": 27, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2115, - "src": "302:4:3", + "referencedDeclaration": 8, + "src": "293:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data storage pointer" } }, - "id": 2132, + "id": 28, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "store", "nodeType": "MemberAccess", - "referencedDeclaration": 2112, - "src": "302:10:3", + "referencedDeclaration": 5, + "src": "293:10:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 2134, + "id": 30, "indexExpression": { "argumentTypes": null, - "id": 2133, + "id": 29, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2125, - "src": "313:3:3", + "referencedDeclaration": 18, + "src": "304:3:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -310,21 +361,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "302:15:3", + "src": "293:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2123, - "id": 2135, + "functionReturnParameters": 16, + "id": 31, "nodeType": "Return", - "src": "295:22:3" + "src": "286:22:0" } ] }, "documentation": null, - "id": 2137, + "id": 33, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -332,31 +383,31 @@ "name": "getAttribute", "nodeType": "FunctionDefinition", "parameters": { - "id": 2120, + "id": 13, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2115, + "id": 8, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2137, - "src": "148:17:3", + "scope": 33, + "src": "132:17:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data" }, "typeName": { "contractScope": null, - "id": 2114, + "id": 7, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2113, - "src": "148:4:3", + "referencedDeclaration": 6, + "src": "132:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data" } }, @@ -365,11 +416,11 @@ }, { "constant": false, - "id": 2117, + "id": 10, "name": "_UUID", "nodeType": "VariableDeclaration", - "scope": 2137, - "src": "167:13:3", + "scope": 33, + "src": "151:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -377,10 +428,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2116, + "id": 9, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "167:7:3", + "src": "151:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -391,11 +442,11 @@ }, { "constant": false, - "id": 2119, + "id": 12, "name": "_attrName", "nodeType": "VariableDeclaration", - "scope": 2137, - "src": "182:16:3", + "scope": 33, + "src": "166:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -403,10 +454,10 @@ "typeString": "string" }, "typeName": { - "id": 2118, + "id": 11, "name": "string", "nodeType": "ElementaryTypeName", - "src": "182:6:3", + "src": "166:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -416,20 +467,20 @@ "visibility": "internal" } ], - "src": "147:52:3" + "src": "131:52:0" }, "payable": false, "returnParameters": { - "id": 2123, + "id": 16, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2122, + "id": 15, "name": "", "nodeType": "VariableDeclaration", - "scope": 2137, - "src": "226:4:3", + "scope": 33, + "src": "207:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -437,10 +488,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2121, + "id": 14, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "226:4:3", + "src": "207:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -450,32 +501,32 @@ "visibility": "internal" } ], - "src": "225:6:3" + "src": "206:6:0" }, - "scope": 2165, - "src": "126:199:3", + "scope": 64, + "src": "110:203:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2163, + "id": 62, "nodeType": "Block", - "src": "434:97:3", + "src": "432:102:0", "statements": [ { "assignments": [ - 2149 + 45 ], "declarations": [ { "constant": false, - "id": 2149, + "id": 45, "name": "key", "nodeType": "VariableDeclaration", - "scope": 2164, - "src": "445:11:3", + "scope": 63, + "src": "438:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -483,10 +534,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2148, + "id": 44, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "445:7:3", + "src": "438:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -496,60 +547,112 @@ "visibility": "internal" } ], - "id": 2154, + "id": 53, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2151, - "name": "_UUID", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2141, - "src": "469:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 2152, - "name": "_attrName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2143, - "src": "476:9:3", + "arguments": [ + { + "argumentTypes": null, + "id": 49, + "name": "_UUID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 37, + "src": "479:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 50, + "name": "_attrName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 39, + "src": "486:9:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 47, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "462:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 48, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "462:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 51, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "462:34:0", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2150, + "id": 46, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "459:9:3", + "referencedDeclaration": 3696, + "src": "452:9:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2153, + "id": 52, "isConstant": false, "isLValue": false, "isPure": false, @@ -557,19 +660,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "459:27:3", + "src": "452:45:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "445:41:3" + "src": "438:59:0" }, { "expression": { "argumentTypes": null, - "id": 2161, + "id": 60, "isConstant": false, "isLValue": false, "isPure": false, @@ -580,40 +683,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2155, + "id": 54, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2139, - "src": "497:4:3", + "referencedDeclaration": 35, + "src": "503:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data storage pointer" } }, - "id": 2158, + "id": 57, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "store", "nodeType": "MemberAccess", - "referencedDeclaration": 2112, - "src": "497:10:3", + "referencedDeclaration": 5, + "src": "503:10:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 2159, + "id": 58, "indexExpression": { "argumentTypes": null, - "id": 2157, + "id": 56, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2149, - "src": "508:3:3", + "referencedDeclaration": 45, + "src": "514:3:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -624,7 +727,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "497:15:3", + "src": "503:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -634,31 +737,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2160, + "id": 59, "name": "_attrVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2145, - "src": "515:8:3", + "referencedDeclaration": 41, + "src": "521:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "497:26:3", + "src": "503:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2162, + "id": 61, "nodeType": "ExpressionStatement", - "src": "497:26:3" + "src": "503:26:0" } ] }, "documentation": null, - "id": 2164, + "id": 63, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -666,31 +769,31 @@ "name": "setAttribute", "nodeType": "FunctionDefinition", "parameters": { - "id": 2146, + "id": 42, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2139, + "id": 35, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2164, - "src": "355:17:3", + "scope": 63, + "src": "344:17:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data" }, "typeName": { "contractScope": null, - "id": 2138, + "id": 34, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2113, - "src": "355:4:3", + "referencedDeclaration": 6, + "src": "344:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data" } }, @@ -699,11 +802,11 @@ }, { "constant": false, - "id": 2141, + "id": 37, "name": "_UUID", "nodeType": "VariableDeclaration", - "scope": 2164, - "src": "374:13:3", + "scope": 63, + "src": "367:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -711,10 +814,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2140, + "id": 36, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "374:7:3", + "src": "367:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -725,11 +828,11 @@ }, { "constant": false, - "id": 2143, + "id": 39, "name": "_attrName", "nodeType": "VariableDeclaration", - "scope": 2164, - "src": "389:16:3", + "scope": 63, + "src": "386:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -737,10 +840,10 @@ "typeString": "string" }, "typeName": { - "id": 2142, + "id": 38, "name": "string", "nodeType": "ElementaryTypeName", - "src": "389:6:3", + "src": "386:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -751,11 +854,11 @@ }, { "constant": false, - "id": 2145, + "id": 41, "name": "_attrVal", "nodeType": "VariableDeclaration", - "scope": 2164, - "src": "407:13:3", + "scope": 63, + "src": "408:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -763,10 +866,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2144, + "id": 40, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "407:4:3", + "src": "408:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -776,48 +879,47 @@ "visibility": "internal" } ], - "src": "354:67:3" + "src": "338:84:0" }, "payable": false, "returnParameters": { - "id": 2147, + "id": 43, "nodeType": "ParameterList", "parameters": [], - "src": "434:0:3" + "src": "432:0:0" }, - "scope": 2165, - "src": "333:198:3", + "scope": 64, + "src": "317:217:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 2166, - "src": "27:507:3" + "scope": 65, + "src": "26:510:0" } ], - "src": "0:536:3" + "src": "0:537:0" }, "legacyAST": { - "absolutePath": "attrstore/AttributeStore.sol", + "absolutePath": "/home/rob/Github/computable/contracts/AttributeStore.sol", "exportedSymbols": { "AttributeStore": [ - 2165 + 64 ] }, - "id": 2166, + "id": 65, "nodeType": "SourceUnit", "nodes": [ { - "id": 2108, + "id": 1, "literals": [ "solidity", - "^", "0.4", - ".11" + ".24" ], "nodeType": "PragmaDirective", - "src": "0:23:3" + "src": "0:23:0" }, { "baseContracts": [], @@ -825,24 +927,24 @@ "contractKind": "library", "documentation": null, "fullyImplemented": true, - "id": 2165, + "id": 64, "linearizedBaseContracts": [ - 2165 + 64 ], "name": "AttributeStore", "nodeType": "ContractDefinition", "nodes": [ { "canonicalName": "AttributeStore.Data", - "id": 2113, + "id": 6, "members": [ { "constant": false, - "id": 2112, + "id": 5, "name": "store", "nodeType": "VariableDeclaration", - "scope": 2113, - "src": "80:30:3", + "scope": 6, + "src": "71:30:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -850,28 +952,28 @@ "typeString": "mapping(bytes32 => uint256)" }, "typeName": { - "id": 2111, + "id": 4, "keyType": { - "id": 2109, + "id": 2, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "88:7:3", + "src": "79:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "80:24:3", + "src": "71:24:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" }, "valueType": { - "id": 2110, + "id": 3, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "99:4:3", + "src": "90:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -884,28 +986,28 @@ ], "name": "Data", "nodeType": "StructDefinition", - "scope": 2165, - "src": "57:61:3", + "scope": 64, + "src": "53:53:0", "visibility": "public" }, { "body": { - "id": 2136, + "id": 32, "nodeType": "Block", - "src": "232:93:3", + "src": "215:98:0", "statements": [ { "assignments": [ - 2125 + 18 ], "declarations": [ { "constant": false, - "id": 2125, + "id": 18, "name": "key", "nodeType": "VariableDeclaration", - "scope": 2137, - "src": "243:11:3", + "scope": 33, + "src": "221:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -913,10 +1015,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2124, + "id": 17, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "243:7:3", + "src": "221:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -926,60 +1028,112 @@ "visibility": "internal" } ], - "id": 2130, + "id": 26, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2127, - "name": "_UUID", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2117, - "src": "267:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 2128, - "name": "_attrName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2119, - "src": "274:9:3", + "arguments": [ + { + "argumentTypes": null, + "id": 22, + "name": "_UUID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 10, + "src": "262:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 23, + "name": "_attrName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 12, + "src": "269:9:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 20, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "245:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 21, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "245:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 24, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "245:34:0", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2126, + "id": 19, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "257:9:3", + "referencedDeclaration": 3696, + "src": "235:9:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2129, + "id": 25, "isConstant": false, "isLValue": false, "isPure": false, @@ -987,14 +1141,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "257:27:3", + "src": "235:45:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "243:41:3" + "src": "221:59:0" }, { "expression": { @@ -1003,40 +1157,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2131, + "id": 27, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2115, - "src": "302:4:3", + "referencedDeclaration": 8, + "src": "293:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data storage pointer" } }, - "id": 2132, + "id": 28, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "store", "nodeType": "MemberAccess", - "referencedDeclaration": 2112, - "src": "302:10:3", + "referencedDeclaration": 5, + "src": "293:10:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 2134, + "id": 30, "indexExpression": { "argumentTypes": null, - "id": 2133, + "id": 29, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2125, - "src": "313:3:3", + "referencedDeclaration": 18, + "src": "304:3:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1047,21 +1201,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "302:15:3", + "src": "293:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2123, - "id": 2135, + "functionReturnParameters": 16, + "id": 31, "nodeType": "Return", - "src": "295:22:3" + "src": "286:22:0" } ] }, "documentation": null, - "id": 2137, + "id": 33, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1069,31 +1223,31 @@ "name": "getAttribute", "nodeType": "FunctionDefinition", "parameters": { - "id": 2120, + "id": 13, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2115, + "id": 8, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2137, - "src": "148:17:3", + "scope": 33, + "src": "132:17:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data" }, "typeName": { "contractScope": null, - "id": 2114, + "id": 7, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2113, - "src": "148:4:3", + "referencedDeclaration": 6, + "src": "132:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data" } }, @@ -1102,11 +1256,11 @@ }, { "constant": false, - "id": 2117, + "id": 10, "name": "_UUID", "nodeType": "VariableDeclaration", - "scope": 2137, - "src": "167:13:3", + "scope": 33, + "src": "151:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1114,10 +1268,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2116, + "id": 9, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "167:7:3", + "src": "151:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1128,11 +1282,11 @@ }, { "constant": false, - "id": 2119, + "id": 12, "name": "_attrName", "nodeType": "VariableDeclaration", - "scope": 2137, - "src": "182:16:3", + "scope": 33, + "src": "166:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1140,10 +1294,10 @@ "typeString": "string" }, "typeName": { - "id": 2118, + "id": 11, "name": "string", "nodeType": "ElementaryTypeName", - "src": "182:6:3", + "src": "166:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1153,20 +1307,20 @@ "visibility": "internal" } ], - "src": "147:52:3" + "src": "131:52:0" }, "payable": false, "returnParameters": { - "id": 2123, + "id": 16, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2122, + "id": 15, "name": "", "nodeType": "VariableDeclaration", - "scope": 2137, - "src": "226:4:3", + "scope": 33, + "src": "207:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1174,10 +1328,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2121, + "id": 14, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "226:4:3", + "src": "207:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1187,32 +1341,32 @@ "visibility": "internal" } ], - "src": "225:6:3" + "src": "206:6:0" }, - "scope": 2165, - "src": "126:199:3", + "scope": 64, + "src": "110:203:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2163, + "id": 62, "nodeType": "Block", - "src": "434:97:3", + "src": "432:102:0", "statements": [ { "assignments": [ - 2149 + 45 ], "declarations": [ { "constant": false, - "id": 2149, + "id": 45, "name": "key", "nodeType": "VariableDeclaration", - "scope": 2164, - "src": "445:11:3", + "scope": 63, + "src": "438:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1220,10 +1374,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2148, + "id": 44, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "445:7:3", + "src": "438:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1233,60 +1387,112 @@ "visibility": "internal" } ], - "id": 2154, + "id": 53, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2151, - "name": "_UUID", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2141, - "src": "469:5:3", - "typeDescriptions": { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - } - }, - { - "argumentTypes": null, - "id": 2152, - "name": "_attrName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2143, - "src": "476:9:3", + "arguments": [ + { + "argumentTypes": null, + "id": 49, + "name": "_UUID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 37, + "src": "479:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + } + }, + { + "argumentTypes": null, + "id": 50, + "name": "_attrName", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 39, + "src": "486:9:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bytes32", + "typeString": "bytes32" + }, + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 47, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "462:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 48, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "462:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 51, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "462:34:0", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_bytes32", - "typeString": "bytes32" - }, - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2150, + "id": 46, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "459:9:3", + "referencedDeclaration": 3696, + "src": "452:9:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2153, + "id": 52, "isConstant": false, "isLValue": false, "isPure": false, @@ -1294,19 +1500,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "459:27:3", + "src": "452:45:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "445:41:3" + "src": "438:59:0" }, { "expression": { "argumentTypes": null, - "id": 2161, + "id": 60, "isConstant": false, "isLValue": false, "isPure": false, @@ -1317,40 +1523,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2155, + "id": 54, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2139, - "src": "497:4:3", + "referencedDeclaration": 35, + "src": "503:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data storage pointer" } }, - "id": 2158, + "id": 57, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "store", "nodeType": "MemberAccess", - "referencedDeclaration": 2112, - "src": "497:10:3", + "referencedDeclaration": 5, + "src": "503:10:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 2159, + "id": 58, "indexExpression": { "argumentTypes": null, - "id": 2157, + "id": 56, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2149, - "src": "508:3:3", + "referencedDeclaration": 45, + "src": "514:3:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1361,7 +1567,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "497:15:3", + "src": "503:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1371,31 +1577,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2160, + "id": 59, "name": "_attrVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2145, - "src": "515:8:3", + "referencedDeclaration": 41, + "src": "521:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "497:26:3", + "src": "503:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2162, + "id": 61, "nodeType": "ExpressionStatement", - "src": "497:26:3" + "src": "503:26:0" } ] }, "documentation": null, - "id": 2164, + "id": 63, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -1403,31 +1609,31 @@ "name": "setAttribute", "nodeType": "FunctionDefinition", "parameters": { - "id": 2146, + "id": 42, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2139, + "id": 35, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2164, - "src": "355:17:3", + "scope": 63, + "src": "344:17:0", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data" }, "typeName": { "contractScope": null, - "id": 2138, + "id": 34, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2113, - "src": "355:4:3", + "referencedDeclaration": 6, + "src": "344:4:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data" } }, @@ -1436,11 +1642,11 @@ }, { "constant": false, - "id": 2141, + "id": 37, "name": "_UUID", "nodeType": "VariableDeclaration", - "scope": 2164, - "src": "374:13:3", + "scope": 63, + "src": "367:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1448,10 +1654,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2140, + "id": 36, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "374:7:3", + "src": "367:7:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1462,11 +1668,11 @@ }, { "constant": false, - "id": 2143, + "id": 39, "name": "_attrName", "nodeType": "VariableDeclaration", - "scope": 2164, - "src": "389:16:3", + "scope": 63, + "src": "386:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1474,10 +1680,10 @@ "typeString": "string" }, "typeName": { - "id": 2142, + "id": 38, "name": "string", "nodeType": "ElementaryTypeName", - "src": "389:6:3", + "src": "386:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1488,11 +1694,11 @@ }, { "constant": false, - "id": 2145, + "id": 41, "name": "_attrVal", "nodeType": "VariableDeclaration", - "scope": 2164, - "src": "407:13:3", + "scope": 63, + "src": "408:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1500,10 +1706,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2144, + "id": 40, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "407:4:3", + "src": "408:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1513,27 +1719,27 @@ "visibility": "internal" } ], - "src": "354:67:3" + "src": "338:84:0" }, "payable": false, "returnParameters": { - "id": 2147, + "id": 43, "nodeType": "ParameterList", "parameters": [], - "src": "434:0:3" + "src": "432:0:0" }, - "scope": 2165, - "src": "333:198:3", + "scope": 64, + "src": "317:217:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 2166, - "src": "27:507:3" + "scope": 65, + "src": "26:510:0" } ], - "src": "0:536:3" + "src": "0:537:0" }, "compiler": { "name": "solc", @@ -1541,5 +1747,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-06-20T22:39:18.099Z" + "updatedAt": "2018-06-21T22:48:42.346Z" } \ No newline at end of file diff --git a/build/contracts/BasicToken.json b/build/contracts/BasicToken.json new file mode 100644 index 0000000..7c5f261 --- /dev/null +++ b/build/contracts/BasicToken.json @@ -0,0 +1,2578 @@ +{ + "contractName": "BasicToken", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "from", + "type": "address" + }, + { + "indexed": true, + "name": "to", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_to", + "type": "address" + }, + { + "name": "_value", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50610415806100206000396000f300608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806318160ddd1461005c57806370a0823114610087578063a9059cbb146100de575b600080fd5b34801561006857600080fd5b50610071610143565b6040518082815260200191505060405180910390f35b34801561009357600080fd5b506100c8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061014d565b6040518082815260200191505060405180910390f35b3480156100ea57600080fd5b50610129600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610195565b604051808215151515815260200191505060405180910390f35b6000600154905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156101d257600080fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561021f57600080fd5b610270826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546103b490919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610303826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546103cd90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60008282111515156103c257fe5b818303905092915050565b600081830190508281101515156103e057fe5b809050929150505600a165627a7a723058201ee6f856adcd86c99435448c9a176c40a945000c983b6b598e121514e11d53c70029", + "deployedBytecode": "0x608060405260043610610057576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806318160ddd1461005c57806370a0823114610087578063a9059cbb146100de575b600080fd5b34801561006857600080fd5b50610071610143565b6040518082815260200191505060405180910390f35b34801561009357600080fd5b506100c8600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061014d565b6040518082815260200191505060405180910390f35b3480156100ea57600080fd5b50610129600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610195565b604051808215151515815260200191505060405180910390f35b6000600154905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156101d257600080fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561021f57600080fd5b610270826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546103b490919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610303826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546103cd90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60008282111515156103c257fe5b818303905092915050565b600081830190508281101515156103e057fe5b809050929150505600a165627a7a723058201ee6f856adcd86c99435448c9a176c40a945000c983b6b598e121514e11d53c70029", + "sourceMap": "170:1053:1:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;170:1053:1;;;;;;;", + "deployedSourceMap": "170:1053:1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;361:83;;8:9:-1;5:2;;;30:1;27;20:12;5:2;361:83:1;;;;;;;;;;;;;;;;;;;;;;;1121:99;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1121:99:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;598:321;;8:9:-1;5:2;;;30:1;27;20:12;5:2;598:321:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;361:83;405:7;427:12;;420:19;;361:83;:::o;1121:99::-;1177:7;1199:8;:16;1208:6;1199:16;;;;;;;;;;;;;;;;1192:23;;1121:99;;;:::o;598:321::-;661:4;696:1;681:17;;:3;:17;;;;673:26;;;;;;;;723:8;:20;732:10;723:20;;;;;;;;;;;;;;;;713:6;:30;;705:39;;;;;;;;774:32;799:6;774:8;:20;783:10;774:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;751:8;:20;760:10;751:20;;;;;;;;;;;;;;;:55;;;;828:25;846:6;828:8;:13;837:3;828:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;812:8;:13;821:3;812:13;;;;;;;;;;;;;;;:41;;;;885:3;864:33;;873:10;864:33;;;890:6;864:33;;;;;;;;;;;;;;;;;;910:4;903:11;;598:321;;;;:::o;1041:110:9:-;1099:7;1126:1;1121;:6;;1114:14;;;;;;1145:1;1141;:5;1134:12;;1041:110;;;;:::o;1213:123::-;1271:9;1296:1;1292;:5;1288:9;;1315:1;1310;:6;;1303:14;;;;;;1330:1;1323:8;;1213:123;;;;:::o", + "source": "pragma solidity 0.4.24;\n\n\nimport \"./ERC20Basic.sol\";\nimport \"./SafeMath.sol\";\n\n\n/**\n * @title Basic token\n * @dev Basic version of StandardToken, with no allowances.\n */\ncontract BasicToken is ERC20Basic {\n using SafeMath for uint256;\n\n mapping(address => uint256) balances;\n\n uint256 totalSupply_;\n\n /**\n * @dev Total number of tokens in existence\n */\n function totalSupply() public view returns (uint256) {\n return totalSupply_;\n }\n\n /**\n * @dev Transfer token for a specified address\n * @param _to The address to transfer to.\n * @param _value The amount to be transferred.\n */\n function transfer(address _to, uint256 _value) public returns (bool) {\n require(_to != address(0));\n require(_value <= balances[msg.sender]);\n\n balances[msg.sender] = balances[msg.sender].sub(_value);\n balances[_to] = balances[_to].add(_value);\n emit Transfer(msg.sender, _to, _value);\n return true;\n }\n\n /**\n * @dev Gets the balance of the specified address.\n * @param _owner The address to query the the balance of.\n * @return An uint256 representing the amount owned by the passed address.\n */\n function balanceOf(address _owner) public view returns (uint256) {\n return balances[_owner];\n }\n\n}\n", + "sourcePath": "/home/rob/Github/computable/contracts/BasicToken.sol", + "ast": { + "absolutePath": "/home/rob/Github/computable/contracts/BasicToken.sol", + "exportedSymbols": { + "BasicToken": [ + 154 + ] + }, + "id": 155, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 60, + "literals": [ + "solidity", + "0.4", + ".24" + ], + "nodeType": "PragmaDirective", + "src": "0:23:1" + }, + { + "absolutePath": "/home/rob/Github/computable/contracts/ERC20Basic.sol", + "file": "./ERC20Basic.sol", + "id": 61, + "nodeType": "ImportDirective", + "scope": 155, + "sourceUnit": 555, + "src": "26:26:1", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rob/Github/computable/contracts/SafeMath.sol", + "file": "./SafeMath.sol", + "id": 62, + "nodeType": "ImportDirective", + "scope": 155, + "sourceUnit": 3772, + "src": "53:24:1", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 63, + "name": "ERC20Basic", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 554, + "src": "193:10:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC20Basic_$554", + "typeString": "contract ERC20Basic" + } + }, + "id": 64, + "nodeType": "InheritanceSpecifier", + "src": "193:10:1" + } + ], + "contractDependencies": [ + 554 + ], + "contractKind": "contract", + "documentation": "@title Basic token\n@dev Basic version of StandardToken, with no allowances.", + "fullyImplemented": true, + "id": 154, + "linearizedBaseContracts": [ + 154, + 554 + ], + "name": "BasicToken", + "nodeType": "ContractDefinition", + "nodes": [ + { + "id": 67, + "libraryName": { + "contractScope": null, + "id": 65, + "name": "SafeMath", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 3771, + "src": "214:8:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_SafeMath_$3771", + "typeString": "library SafeMath" + } + }, + "nodeType": "UsingForDirective", + "src": "208:27:1", + "typeName": { + "id": 66, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "227:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + { + "constant": false, + "id": 71, + "name": "balances", + "nodeType": "VariableDeclaration", + "scope": 154, + "src": "239:36:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 70, + "keyType": { + "id": 68, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "247:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "239:27:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 69, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "258:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 73, + "name": "totalSupply_", + "nodeType": "VariableDeclaration", + "scope": 154, + "src": "280:20:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 72, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "280:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "body": { + "id": 80, + "nodeType": "Block", + "src": "414:30:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 78, + "name": "totalSupply_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "427:12:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 77, + "id": 79, + "nodeType": "Return", + "src": "420:19:1" + } + ] + }, + "documentation": "@dev Total number of tokens in existence", + "id": 81, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "totalSupply", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 74, + "nodeType": "ParameterList", + "parameters": [], + "src": "381:2:1" + }, + "payable": false, + "returnParameters": { + "id": 77, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 76, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 81, + "src": "405:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 75, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "405:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "404:9:1" + }, + "scope": 154, + "src": "361:83:1", + "stateMutability": "view", + "superFunction": 529, + "visibility": "public" + }, + { + "body": { + "id": 140, + "nodeType": "Block", + "src": "667:252:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 95, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 91, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "681:3:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 93, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "696:1:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 92, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "688:7:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 94, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "688:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "681:17:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 90, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4036, + 4037 + ], + "referencedDeclaration": 4036, + "src": "673:7:1", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 96, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "673:26:1", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 97, + "nodeType": "ExpressionStatement", + "src": "673:26:1" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 99, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "713:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 100, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "723:8:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 103, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 101, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "732:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 102, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "732:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "723:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "713:30:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 98, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4036, + 4037 + ], + "referencedDeclaration": 4036, + "src": "705:7:1", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 105, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "705:39:1", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 106, + "nodeType": "ExpressionStatement", + "src": "705:39:1" + }, + { + "expression": { + "argumentTypes": null, + "id": 118, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 107, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "751:8:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 110, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 108, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "760:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 109, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "760:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "751:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 116, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "799:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 111, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "774:8:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 114, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 112, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "783:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 113, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "783:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "774:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 115, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 3746, + "src": "774:24:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "774:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "751:55:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 119, + "nodeType": "ExpressionStatement", + "src": "751:55:1" + }, + { + "expression": { + "argumentTypes": null, + "id": 129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 120, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "812:8:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 122, + "indexExpression": { + "argumentTypes": null, + "id": 121, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "821:3:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "812:13:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 127, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "846:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 123, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "828:8:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 125, + "indexExpression": { + "argumentTypes": null, + "id": 124, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "837:3:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "828:13:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 126, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 3770, + "src": "828:17:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 128, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "828:25:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "812:41:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 130, + "nodeType": "ExpressionStatement", + "src": "812:41:1" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 132, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "873:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 133, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "873:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 134, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "885:3:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 135, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "890:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 131, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 553, + "src": "864:8:1", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 136, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "864:33:1", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 137, + "nodeType": "EmitStatement", + "src": "859:38:1" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 138, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "910:4:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 89, + "id": 139, + "nodeType": "Return", + "src": "903:11:1" + } + ] + }, + "documentation": "@dev Transfer token for a specified address\n@param _to The address to transfer to.\n@param _value The amount to be transferred.", + "id": 141, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transfer", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 86, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 83, + "name": "_to", + "nodeType": "VariableDeclaration", + "scope": 141, + "src": "616:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 82, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "616:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 85, + "name": "_value", + "nodeType": "VariableDeclaration", + "scope": 141, + "src": "629:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 84, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "629:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "615:29:1" + }, + "payable": false, + "returnParameters": { + "id": 89, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 88, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 141, + "src": "661:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 87, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "661:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "660:6:1" + }, + "scope": 154, + "src": "598:321:1", + "stateMutability": "nonpayable", + "superFunction": 545, + "visibility": "public" + }, + { + "body": { + "id": 152, + "nodeType": "Block", + "src": "1186:34:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 148, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "1199:8:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 150, + "indexExpression": { + "argumentTypes": null, + "id": 149, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 143, + "src": "1208:6:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1199:16:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 147, + "id": 151, + "nodeType": "Return", + "src": "1192:23:1" + } + ] + }, + "documentation": "@dev Gets the balance of the specified address.\n@param _owner The address to query the the balance of.\n@return An uint256 representing the amount owned by the passed address.", + "id": 153, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "balanceOf", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 144, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 143, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 153, + "src": "1140:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 142, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1140:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1139:16:1" + }, + "payable": false, + "returnParameters": { + "id": 147, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 146, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 153, + "src": "1177:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 145, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1177:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1176:9:1" + }, + "scope": 154, + "src": "1121:99:1", + "stateMutability": "view", + "superFunction": 536, + "visibility": "public" + } + ], + "scope": 155, + "src": "170:1053:1" + } + ], + "src": "0:1224:1" + }, + "legacyAST": { + "absolutePath": "/home/rob/Github/computable/contracts/BasicToken.sol", + "exportedSymbols": { + "BasicToken": [ + 154 + ] + }, + "id": 155, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 60, + "literals": [ + "solidity", + "0.4", + ".24" + ], + "nodeType": "PragmaDirective", + "src": "0:23:1" + }, + { + "absolutePath": "/home/rob/Github/computable/contracts/ERC20Basic.sol", + "file": "./ERC20Basic.sol", + "id": 61, + "nodeType": "ImportDirective", + "scope": 155, + "sourceUnit": 555, + "src": "26:26:1", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rob/Github/computable/contracts/SafeMath.sol", + "file": "./SafeMath.sol", + "id": 62, + "nodeType": "ImportDirective", + "scope": 155, + "sourceUnit": 3772, + "src": "53:24:1", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 63, + "name": "ERC20Basic", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 554, + "src": "193:10:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC20Basic_$554", + "typeString": "contract ERC20Basic" + } + }, + "id": 64, + "nodeType": "InheritanceSpecifier", + "src": "193:10:1" + } + ], + "contractDependencies": [ + 554 + ], + "contractKind": "contract", + "documentation": "@title Basic token\n@dev Basic version of StandardToken, with no allowances.", + "fullyImplemented": true, + "id": 154, + "linearizedBaseContracts": [ + 154, + 554 + ], + "name": "BasicToken", + "nodeType": "ContractDefinition", + "nodes": [ + { + "id": 67, + "libraryName": { + "contractScope": null, + "id": 65, + "name": "SafeMath", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 3771, + "src": "214:8:1", + "typeDescriptions": { + "typeIdentifier": "t_contract$_SafeMath_$3771", + "typeString": "library SafeMath" + } + }, + "nodeType": "UsingForDirective", + "src": "208:27:1", + "typeName": { + "id": 66, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "227:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + { + "constant": false, + "id": 71, + "name": "balances", + "nodeType": "VariableDeclaration", + "scope": 154, + "src": "239:36:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 70, + "keyType": { + "id": 68, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "247:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "239:27:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 69, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "258:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 73, + "name": "totalSupply_", + "nodeType": "VariableDeclaration", + "scope": 154, + "src": "280:20:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 72, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "280:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + }, + { + "body": { + "id": 80, + "nodeType": "Block", + "src": "414:30:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 78, + "name": "totalSupply_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "427:12:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 77, + "id": 79, + "nodeType": "Return", + "src": "420:19:1" + } + ] + }, + "documentation": "@dev Total number of tokens in existence", + "id": 81, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "totalSupply", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 74, + "nodeType": "ParameterList", + "parameters": [], + "src": "381:2:1" + }, + "payable": false, + "returnParameters": { + "id": 77, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 76, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 81, + "src": "405:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 75, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "405:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "404:9:1" + }, + "scope": 154, + "src": "361:83:1", + "stateMutability": "view", + "superFunction": 529, + "visibility": "public" + }, + { + "body": { + "id": 140, + "nodeType": "Block", + "src": "667:252:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 95, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 91, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "681:3:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 93, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "696:1:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 92, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "688:7:1", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 94, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "688:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "681:17:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 90, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4036, + 4037 + ], + "referencedDeclaration": 4036, + "src": "673:7:1", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 96, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "673:26:1", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 97, + "nodeType": "ExpressionStatement", + "src": "673:26:1" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 99, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "713:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 100, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "723:8:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 103, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 101, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "732:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 102, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "732:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "723:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "713:30:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 98, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4036, + 4037 + ], + "referencedDeclaration": 4036, + "src": "705:7:1", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 105, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "705:39:1", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 106, + "nodeType": "ExpressionStatement", + "src": "705:39:1" + }, + { + "expression": { + "argumentTypes": null, + "id": 118, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 107, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "751:8:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 110, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 108, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "760:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 109, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "760:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "751:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 116, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "799:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 111, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "774:8:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 114, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 112, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "783:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 113, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "783:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "774:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 115, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 3746, + "src": "774:24:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 117, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "774:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "751:55:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 119, + "nodeType": "ExpressionStatement", + "src": "751:55:1" + }, + { + "expression": { + "argumentTypes": null, + "id": 129, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 120, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "812:8:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 122, + "indexExpression": { + "argumentTypes": null, + "id": 121, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "821:3:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "812:13:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 127, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "846:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 123, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "828:8:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 125, + "indexExpression": { + "argumentTypes": null, + "id": 124, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "837:3:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "828:13:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 126, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 3770, + "src": "828:17:1", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 128, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "828:25:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "812:41:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 130, + "nodeType": "ExpressionStatement", + "src": "812:41:1" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 132, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "873:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 133, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "873:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 134, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "885:3:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 135, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "890:6:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 131, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 553, + "src": "864:8:1", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 136, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "864:33:1", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 137, + "nodeType": "EmitStatement", + "src": "859:38:1" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 138, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "910:4:1", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 89, + "id": 139, + "nodeType": "Return", + "src": "903:11:1" + } + ] + }, + "documentation": "@dev Transfer token for a specified address\n@param _to The address to transfer to.\n@param _value The amount to be transferred.", + "id": 141, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transfer", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 86, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 83, + "name": "_to", + "nodeType": "VariableDeclaration", + "scope": 141, + "src": "616:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 82, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "616:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 85, + "name": "_value", + "nodeType": "VariableDeclaration", + "scope": 141, + "src": "629:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 84, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "629:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "615:29:1" + }, + "payable": false, + "returnParameters": { + "id": 89, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 88, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 141, + "src": "661:4:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 87, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "661:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "660:6:1" + }, + "scope": 154, + "src": "598:321:1", + "stateMutability": "nonpayable", + "superFunction": 545, + "visibility": "public" + }, + { + "body": { + "id": 152, + "nodeType": "Block", + "src": "1186:34:1", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 148, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "1199:8:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 150, + "indexExpression": { + "argumentTypes": null, + "id": 149, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 143, + "src": "1208:6:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1199:16:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 147, + "id": 151, + "nodeType": "Return", + "src": "1192:23:1" + } + ] + }, + "documentation": "@dev Gets the balance of the specified address.\n@param _owner The address to query the the balance of.\n@return An uint256 representing the amount owned by the passed address.", + "id": 153, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "balanceOf", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 144, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 143, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 153, + "src": "1140:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 142, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1140:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1139:16:1" + }, + "payable": false, + "returnParameters": { + "id": 147, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 146, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 153, + "src": "1177:7:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 145, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1177:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1176:9:1" + }, + "scope": 154, + "src": "1121:99:1", + "stateMutability": "view", + "superFunction": 536, + "visibility": "public" + } + ], + "scope": 155, + "src": "170:1053:1" + } + ], + "src": "0:1224:1" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-06-21T22:21:14.778Z" +} \ No newline at end of file diff --git a/build/contracts/CToken.json b/build/contracts/CToken.json deleted file mode 100644 index ad435af..0000000 --- a/build/contracts/CToken.json +++ /dev/null @@ -1,381 +0,0 @@ -{ - "contractName": "CToken", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "name", - "outputs": [ - { - "name": "", - "type": "string" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_spender", - "type": "address" - }, - { - "name": "_value", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "name": "success", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_from", - "type": "address" - }, - { - "name": "_to", - "type": "address" - }, - { - "name": "_value", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "name": "success", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "decimals", - "outputs": [ - { - "name": "", - "type": "uint8" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_owner", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "name": "balance", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "symbol", - "outputs": [ - { - "name": "", - "type": "string" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_to", - "type": "address" - }, - { - "name": "_value", - "type": "uint256" - } - ], - "name": "transfer", - "outputs": [ - { - "name": "success", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_owner", - "type": "address" - }, - { - "name": "_spender", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "name": "remaining", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "_from", - "type": "address" - }, - { - "indexed": true, - "name": "_to", - "type": "address" - }, - { - "indexed": false, - "name": "_value", - "type": "uint256" - } - ], - "name": "Transfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "_owner", - "type": "address" - }, - { - "indexed": true, - "name": "_spender", - "type": "address" - }, - { - "indexed": false, - "name": "_value", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "sourceMap": "", - "deployedSourceMap": "", - "source": "/**\n * A placeholder token that, for now simply serves as a lever to force the\n * tokens/eip20/EIP20 to build and be available to the js repo\n */\n\npragma solidity 0.4.24;\n\nimport \"tokens/eip20/EIP20.sol\";\n\n\ncontract CToken is EIP20 {\n\n}\n", - "sourcePath": "/home/rbharath/computable/contracts/C-Token.sol", - "ast": { - "absolutePath": "/home/rbharath/computable/contracts/C-Token.sol", - "exportedSymbols": { - "CToken": [ - 5 - ] - }, - "id": 6, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1, - "literals": [ - "solidity", - "0.4", - ".24" - ], - "nodeType": "PragmaDirective", - "src": "147:23:0" - }, - { - "absolutePath": "tokens/eip20/EIP20.sol", - "file": "tokens/eip20/EIP20.sol", - "id": 2, - "nodeType": "ImportDirective", - "scope": 6, - "sourceUnit": 3717, - "src": "172:32:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 3, - "name": "EIP20", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3716, - "src": "226:5:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20_$3716", - "typeString": "contract EIP20" - } - }, - "id": 4, - "nodeType": "InheritanceSpecifier", - "src": "226:5:0" - } - ], - "contractDependencies": [ - 3716, - 3782 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 5, - "linearizedBaseContracts": [ - 5, - 3716, - 3782 - ], - "name": "CToken", - "nodeType": "ContractDefinition", - "nodes": [], - "scope": 6, - "src": "207:29:0" - } - ], - "src": "147:90:0" - }, - "legacyAST": { - "absolutePath": "/home/rbharath/computable/contracts/C-Token.sol", - "exportedSymbols": { - "CToken": [ - 5 - ] - }, - "id": 6, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1, - "literals": [ - "solidity", - "0.4", - ".24" - ], - "nodeType": "PragmaDirective", - "src": "147:23:0" - }, - { - "absolutePath": "tokens/eip20/EIP20.sol", - "file": "tokens/eip20/EIP20.sol", - "id": 2, - "nodeType": "ImportDirective", - "scope": 6, - "sourceUnit": 3717, - "src": "172:32:0", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 3, - "name": "EIP20", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3716, - "src": "226:5:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20_$3716", - "typeString": "contract EIP20" - } - }, - "id": 4, - "nodeType": "InheritanceSpecifier", - "src": "226:5:0" - } - ], - "contractDependencies": [ - 3716, - 3782 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 5, - "linearizedBaseContracts": [ - 5, - 3716, - 3782 - ], - "name": "CToken", - "nodeType": "ContractDefinition", - "nodes": [], - "scope": 6, - "src": "207:29:0" - } - ], - "src": "147:90:0" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-06-20T22:39:18.073Z" -} \ No newline at end of file diff --git a/build/contracts/ConstructableToken.json b/build/contracts/ConstructableToken.json new file mode 100644 index 0000000..00aef4d --- /dev/null +++ b/build/contracts/ConstructableToken.json @@ -0,0 +1,824 @@ +{ + "contractName": "ConstructableToken", + "abi": [ + { + "constant": false, + "inputs": [ + { + "name": "_spender", + "type": "address" + }, + { + "name": "_value", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_from", + "type": "address" + }, + { + "name": "_to", + "type": "address" + }, + { + "name": "_value", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_spender", + "type": "address" + }, + { + "name": "_subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseApproval", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_to", + "type": "address" + }, + { + "name": "_value", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_spender", + "type": "address" + }, + { + "name": "_addedValue", + "type": "uint256" + } + ], + "name": "increaseApproval", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_owner", + "type": "address" + }, + { + "name": "_spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "name": "initialAccount", + "type": "address" + }, + { + "name": "initialBalance", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "from", + "type": "address" + }, + { + "indexed": true, + "name": "to", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b506040516040806110cf8339810180604052810190808051906020019092919080519060200190929190505050806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550806001819055505050611037806100986000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063095ea7b31461009357806318160ddd146100f857806323b872dd1461012357806366188463146101a857806370a082311461020d578063a9059cbb14610264578063d73dd623146102c9578063dd62ed3e1461032e575b600080fd5b34801561009f57600080fd5b506100de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506103a5565b604051808215151515815260200191505060405180910390f35b34801561010457600080fd5b5061010d610497565b6040518082815260200191505060405180910390f35b34801561012f57600080fd5b5061018e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506104a1565b604051808215151515815260200191505060405180910390f35b3480156101b457600080fd5b506101f3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061085b565b604051808215151515815260200191505060405180910390f35b34801561021957600080fd5b5061024e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610aec565b6040518082815260200191505060405180910390f35b34801561027057600080fd5b506102af600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b34565b604051808215151515815260200191505060405180910390f35b3480156102d557600080fd5b50610314600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d53565b604051808215151515815260200191505060405180910390f35b34801561033a57600080fd5b5061038f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f4f565b6040518082815260200191505060405180910390f35b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600154905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156104de57600080fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561052b57600080fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515156105b657600080fd5b610607826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fd690919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061069a826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fef90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061076b82600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fd690919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083111561096c576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610a00565b61097f8382610fd690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610b7157600080fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610bbe57600080fd5b610c0f826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fd690919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ca2826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fef90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610de482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fef90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000828211151515610fe457fe5b818303905092915050565b6000818301905082811015151561100257fe5b809050929150505600a165627a7a7230582046e6f646bd05a5ece836e67e6f742f07ebf0fec1505abda4eab232b1a3f9a4650029", + "deployedBytecode": "0x60806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063095ea7b31461009357806318160ddd146100f857806323b872dd1461012357806366188463146101a857806370a082311461020d578063a9059cbb14610264578063d73dd623146102c9578063dd62ed3e1461032e575b600080fd5b34801561009f57600080fd5b506100de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506103a5565b604051808215151515815260200191505060405180910390f35b34801561010457600080fd5b5061010d610497565b6040518082815260200191505060405180910390f35b34801561012f57600080fd5b5061018e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506104a1565b604051808215151515815260200191505060405180910390f35b3480156101b457600080fd5b506101f3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061085b565b604051808215151515815260200191505060405180910390f35b34801561021957600080fd5b5061024e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610aec565b6040518082815260200191505060405180910390f35b34801561027057600080fd5b506102af600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b34565b604051808215151515815260200191505060405180910390f35b3480156102d557600080fd5b50610314600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d53565b604051808215151515815260200191505060405180910390f35b34801561033a57600080fd5b5061038f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f4f565b6040518082815260200191505060405180910390f35b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600154905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156104de57600080fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561052b57600080fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515156105b657600080fd5b610607826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fd690919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061069a826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fef90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061076b82600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fd690919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083111561096c576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610a00565b61097f8382610fd690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610b7157600080fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610bbe57600080fd5b610c0f826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fd690919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ca2826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fef90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610de482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fef90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000828211151515610fe457fe5b818303905092915050565b6000818301905082811015151561100257fe5b809050929150505600a165627a7a7230582046e6f646bd05a5ece836e67e6f742f07ebf0fec1505abda4eab232b1a3f9a4650029", + "sourceMap": "288:207:2:-;;;338:154;8:9:-1;5:2;;;30:1;27;20:12;5:2;338:154:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;438:14;411:8;:24;420:14;411:24;;;;;;;;;;;;;;;:41;;;;473:14;458:12;:29;;;;338:154;;288:207;;;;;;", + "deployedSourceMap": "288:207:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1813:188:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1813:188:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;361:83:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;361:83:1;;;;;;;;;;;;;;;;;;;;;;;725:470:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;725:470:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3678:431;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3678:431:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1121:99:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1121:99:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;598:321;;8:9:-1;5:2;;;30:1;27;20:12;5:2;598:321:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2925:296:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2925:296:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2320:153;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2320:153:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1813:188;1880:4;1924:6;1892:7;:19;1900:10;1892:19;;;;;;;;;;;;;;;:29;1912:8;1892:29;;;;;;;;;;;;;;;:38;;;;1962:8;1941:38;;1950:10;1941:38;;;1972:6;1941:38;;;;;;;;;;;;;;;;;;1992:4;1985:11;;1813:188;;;;:::o;361:83:1:-;405:7;427:12;;420:19;;361:83;:::o;725:470:10:-;831:4;868:1;853:17;;:3;:17;;;;845:26;;;;;;;;895:8;:15;904:5;895:15;;;;;;;;;;;;;;;;885:6;:25;;877:34;;;;;;;;935:7;:14;943:5;935:14;;;;;;;;;;;;;;;:26;950:10;935:26;;;;;;;;;;;;;;;;925:6;:36;;917:45;;;;;;;;987:27;1007:6;987:8;:15;996:5;987:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;969:8;:15;978:5;969:15;;;;;;;;;;;;;;;:45;;;;1036:25;1054:6;1036:8;:13;1045:3;1036:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;1020:8;:13;1029:3;1020:13;;;;;;;;;;;;;;;:41;;;;1096:38;1127:6;1096:7;:14;1104:5;1096:14;;;;;;;;;;;;;;;:26;1111:10;1096:26;;;;;;;;;;;;;;;;:30;;:38;;;;:::i;:::-;1067:7;:14;1075:5;1067:14;;;;;;;;;;;;;;;:26;1082:10;1067:26;;;;;;;;;;;;;;;:67;;;;1161:3;1145:28;;1154:5;1145:28;;;1166:6;1145:28;;;;;;;;;;;;;;;;;;1186:4;1179:11;;725:470;;;;;:::o;3678:431::-;3784:4;3798:16;3817:7;:19;3825:10;3817:19;;;;;;;;;;;;;;;:29;3837:8;3817:29;;;;;;;;;;;;;;;;3798:48;;3875:8;3856:16;:27;3852:164;;;3925:1;3893:7;:19;3901:10;3893:19;;;;;;;;;;;;;;;:29;3913:8;3893:29;;;;;;;;;;;;;;;:33;;;;3852:164;;;3979:30;3992:16;3979:8;:12;;:30;;;;:::i;:::-;3947:7;:19;3955:10;3947:19;;;;;;;;;;;;;;;:29;3967:8;3947:29;;;;;;;;;;;;;;;:62;;;;3852:164;4047:8;4026:61;;4035:10;4026:61;;;4057:7;:19;4065:10;4057:19;;;;;;;;;;;;;;;:29;4077:8;4057:29;;;;;;;;;;;;;;;;4026:61;;;;;;;;;;;;;;;;;;4100:4;4093:11;;3678:431;;;;;:::o;1121:99:1:-;1177:7;1199:8;:16;1208:6;1199:16;;;;;;;;;;;;;;;;1192:23;;1121:99;;;:::o;598:321::-;661:4;696:1;681:17;;:3;:17;;;;673:26;;;;;;;;723:8;:20;732:10;723:20;;;;;;;;;;;;;;;;713:6;:30;;705:39;;;;;;;;774:32;799:6;774:8;:20;783:10;774:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;751:8;:20;760:10;751:20;;;;;;;;;;;;;;;:55;;;;828:25;846:6;828:8;:13;837:3;828:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;812:8;:13;821:3;812:13;;;;;;;;;;;;;;;:41;;;;885:3;864:33;;873:10;864:33;;;890:6;864:33;;;;;;;;;;;;;;;;;;910:4;903:11;;598:321;;;;:::o;2925:296:10:-;3026:4;3080:46;3114:11;3080:7;:19;3088:10;3080:19;;;;;;;;;;;;;;;:29;3100:8;3080:29;;;;;;;;;;;;;;;;:33;;:46;;;;:::i;:::-;3040:7;:19;3048:10;3040:19;;;;;;;;;;;;;;;:29;3060:8;3040:29;;;;;;;;;;;;;;;:87;;;;3159:8;3138:61;;3147:10;3138:61;;;3169:7;:19;3177:10;3169:19;;;;;;;;;;;;;;;:29;3189:8;3169:29;;;;;;;;;;;;;;;;3138:61;;;;;;;;;;;;;;;;;;3212:4;3205:11;;2925:296;;;;:::o;2320:153::-;2419:7;2443;:15;2451:6;2443:15;;;;;;;;;;;;;;;:25;2459:8;2443:25;;;;;;;;;;;;;;;;2436:32;;2320:153;;;;:::o;1041:110:9:-;1099:7;1126:1;1121;:6;;1114:14;;;;;;1145:1;1141;:5;1134:12;;1041:110;;;;:::o;1213:123::-;1271:9;1296:1;1292;:5;1288:9;;1315:1;1310;:6;;1303:14;;;;;;1330:1;1323:8;;1213:123;;;;:::o", + "source": "pragma solidity 0.4.24;\n\nimport \"./StandardToken.sol\";\n\n\n/**\n * A subclass of the Open Zeppelin StandardToken with a constructor.\n *\n * NOTE: This is essentially what O.Z. refers to as a \"StandardTokenMock\".\n * We feel that it is just a subclass that belongs with the other contracts\n */\ncontract ConstructableToken is StandardToken {\n\n constructor(address initialAccount, uint256 initialBalance) public {\n balances[initialAccount] = initialBalance;\n totalSupply_ = initialBalance;\n }\n\n}\n\n\n", + "sourcePath": "/home/rob/Github/computable/contracts/ConstructableToken.sol", + "ast": { + "absolutePath": "/home/rob/Github/computable/contracts/ConstructableToken.sol", + "exportedSymbols": { + "ConstructableToken": [ + 178 + ] + }, + "id": 179, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 156, + "literals": [ + "solidity", + "0.4", + ".24" + ], + "nodeType": "PragmaDirective", + "src": "0:23:2" + }, + { + "absolutePath": "/home/rob/Github/computable/contracts/StandardToken.sol", + "file": "./StandardToken.sol", + "id": 157, + "nodeType": "ImportDirective", + "scope": 179, + "sourceUnit": 4019, + "src": "25:29:2", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 158, + "name": "StandardToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 4018, + "src": "319:13:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_StandardToken_$4018", + "typeString": "contract StandardToken" + } + }, + "id": 159, + "nodeType": "InheritanceSpecifier", + "src": "319:13:2" + } + ], + "contractDependencies": [ + 154, + 522, + 554, + 4018 + ], + "contractKind": "contract", + "documentation": "A subclass of the Open Zeppelin StandardToken with a constructor.\n * NOTE: This is essentially what O.Z. refers to as a \"StandardTokenMock\".\nWe feel that it is just a subclass that belongs with the other contracts", + "fullyImplemented": true, + "id": 178, + "linearizedBaseContracts": [ + 178, + 4018, + 154, + 522, + 554 + ], + "name": "ConstructableToken", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": { + "id": 176, + "nodeType": "Block", + "src": "405:87:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 170, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 166, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "411:8:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 168, + "indexExpression": { + "argumentTypes": null, + "id": 167, + "name": "initialAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 161, + "src": "420:14:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "411:24:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 169, + "name": "initialBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 163, + "src": "438:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "411:41:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 171, + "nodeType": "ExpressionStatement", + "src": "411:41:2" + }, + { + "expression": { + "argumentTypes": null, + "id": 174, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 172, + "name": "totalSupply_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "458:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 173, + "name": "initialBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 163, + "src": "473:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "458:29:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 175, + "nodeType": "ExpressionStatement", + "src": "458:29:2" + } + ] + }, + "documentation": null, + "id": 177, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 164, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 161, + "name": "initialAccount", + "nodeType": "VariableDeclaration", + "scope": 177, + "src": "350:22:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 160, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "350:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 163, + "name": "initialBalance", + "nodeType": "VariableDeclaration", + "scope": 177, + "src": "374:22:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 162, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "374:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "349:48:2" + }, + "payable": false, + "returnParameters": { + "id": 165, + "nodeType": "ParameterList", + "parameters": [], + "src": "405:0:2" + }, + "scope": 178, + "src": "338:154:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 179, + "src": "288:207:2" + } + ], + "src": "0:498:2" + }, + "legacyAST": { + "absolutePath": "/home/rob/Github/computable/contracts/ConstructableToken.sol", + "exportedSymbols": { + "ConstructableToken": [ + 178 + ] + }, + "id": 179, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 156, + "literals": [ + "solidity", + "0.4", + ".24" + ], + "nodeType": "PragmaDirective", + "src": "0:23:2" + }, + { + "absolutePath": "/home/rob/Github/computable/contracts/StandardToken.sol", + "file": "./StandardToken.sol", + "id": 157, + "nodeType": "ImportDirective", + "scope": 179, + "sourceUnit": 4019, + "src": "25:29:2", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 158, + "name": "StandardToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 4018, + "src": "319:13:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_StandardToken_$4018", + "typeString": "contract StandardToken" + } + }, + "id": 159, + "nodeType": "InheritanceSpecifier", + "src": "319:13:2" + } + ], + "contractDependencies": [ + 154, + 522, + 554, + 4018 + ], + "contractKind": "contract", + "documentation": "A subclass of the Open Zeppelin StandardToken with a constructor.\n * NOTE: This is essentially what O.Z. refers to as a \"StandardTokenMock\".\nWe feel that it is just a subclass that belongs with the other contracts", + "fullyImplemented": true, + "id": 178, + "linearizedBaseContracts": [ + 178, + 4018, + 154, + 522, + 554 + ], + "name": "ConstructableToken", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": { + "id": 176, + "nodeType": "Block", + "src": "405:87:2", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 170, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 166, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "411:8:2", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 168, + "indexExpression": { + "argumentTypes": null, + "id": 167, + "name": "initialAccount", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 161, + "src": "420:14:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "411:24:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 169, + "name": "initialBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 163, + "src": "438:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "411:41:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 171, + "nodeType": "ExpressionStatement", + "src": "411:41:2" + }, + { + "expression": { + "argumentTypes": null, + "id": 174, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 172, + "name": "totalSupply_", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 73, + "src": "458:12:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 173, + "name": "initialBalance", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 163, + "src": "473:14:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "458:29:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 175, + "nodeType": "ExpressionStatement", + "src": "458:29:2" + } + ] + }, + "documentation": null, + "id": 177, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 164, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 161, + "name": "initialAccount", + "nodeType": "VariableDeclaration", + "scope": 177, + "src": "350:22:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 160, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "350:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 163, + "name": "initialBalance", + "nodeType": "VariableDeclaration", + "scope": 177, + "src": "374:22:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 162, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "374:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "349:48:2" + }, + "payable": false, + "returnParameters": { + "id": 165, + "nodeType": "ParameterList", + "parameters": [], + "src": "405:0:2" + }, + "scope": 178, + "src": "338:154:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 179, + "src": "288:207:2" + } + ], + "src": "0:498:2" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-06-21T22:21:14.779Z" +} \ No newline at end of file diff --git a/build/contracts/DLL.json b/build/contracts/DLL.json index 9b493a0..9aa8d86 100644 --- a/build/contracts/DLL.json +++ b/build/contracts/DLL.json @@ -172,32 +172,31 @@ "type": "function" } ], - "bytecode": "0x610553610030600b82828239805160001a6073146000811461002057610022565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600436106100a5576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806307d29ac9146100aa57806330fe0a0a146100e8578063366a5ba2146101265780636d900ed0146101685780637c11cf641461019f5780639735c51b146101d3578063c426b0061461021e578063ee4f1ac414610256575b600080fd5b6100d2600480360381019080803590602001909291908035906020019092919050505061028a565b6040518082815260200191505060405180910390f35b61011060048036038101908080359060200190929190803590602001909291905050506102ad565b6040518082815260200191505060405180910390f35b61014e60048036038101908080359060200190929190803590602001909291905050506102d0565b604051808215151515815260200191505060405180910390f35b81801561017457600080fd5b5061019d6004803603810190808035906020019092919080359060200190929190505050610350565b005b6101bd600480360381019080803590602001909291905050506103e9565b6040518082815260200191505060405180910390f35b8180156101df57600080fd5b5061021c600480360381019080803590602001909291908035906020019092919080359060200190929190803590602001909291905050506103fd565b005b61023c600480360381019080803590602001909291905050506104ff565b604051808215151515815260200191505060405180910390f35b61027460048036038101908080359060200190929190505050610513565b6040518082815260200191505060405180910390f35b600082600001600083815260200190815260200160002060000154905092915050565b600082600001600083815260200190815260200160002060010154905092915050565b60008060006102de856104ff565b806102e95750600084145b156102f75760009250610348565b8361030186610513565b148015610315575083610313866103e9565b145b91506000610323868661028a565b1480156103395750600061033786866102ad565b145b90508180610345575080155b92505b505092915050565b60008061035d84846102d0565b1515610368576103e3565b610372848461028a565b915061037e84846102ad565b905080846000016000848152602001908152602001600020600101819055508184600001600083815260200190815260200160002060000181905550836000016000848152602001908152602001600020600080820160009055600182016000905550505b50505050565b60006103f68260006102ad565b9050919050565b6000821415151561040d57600080fd5b6104178483610350565b600083148061042c575061042b84846102d0565b5b151561043757600080fd5b600081148061044c575061044b84826102d0565b5b151561045757600080fd5b80610462858561028a565b14151561046e57600080fd5b8261047985836102ad565b14151561048557600080fd5b828460000160008481526020019081526020016000206001018190555080846000016000848152602001908152602001600020600001819055508184600001600085815260200190815260200160002060000181905550818460000160008381526020019081526020016000206001018190555050505050565b60008061050b83610513565b149050919050565b600061052082600061028a565b90509190505600a165627a7a723058203f6caeb6bd2ced87b59f3e82a8e24e247c359feb3462fcf287e34a931bd6b1eb0029", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100a5576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806307d29ac9146100aa57806330fe0a0a146100e8578063366a5ba2146101265780636d900ed0146101685780637c11cf641461019f5780639735c51b146101d3578063c426b0061461021e578063ee4f1ac414610256575b600080fd5b6100d2600480360381019080803590602001909291908035906020019092919050505061028a565b6040518082815260200191505060405180910390f35b61011060048036038101908080359060200190929190803590602001909291905050506102ad565b6040518082815260200191505060405180910390f35b61014e60048036038101908080359060200190929190803590602001909291905050506102d0565b604051808215151515815260200191505060405180910390f35b81801561017457600080fd5b5061019d6004803603810190808035906020019092919080359060200190929190505050610350565b005b6101bd600480360381019080803590602001909291905050506103e9565b6040518082815260200191505060405180910390f35b8180156101df57600080fd5b5061021c600480360381019080803590602001909291908035906020019092919080359060200190929190803590602001909291905050506103fd565b005b61023c600480360381019080803590602001909291905050506104ff565b604051808215151515815260200191505060405180910390f35b61027460048036038101908080359060200190929190505050610513565b6040518082815260200191505060405180910390f35b600082600001600083815260200190815260200160002060000154905092915050565b600082600001600083815260200190815260200160002060010154905092915050565b60008060006102de856104ff565b806102e95750600084145b156102f75760009250610348565b8361030186610513565b148015610315575083610313866103e9565b145b91506000610323868661028a565b1480156103395750600061033786866102ad565b145b90508180610345575080155b92505b505092915050565b60008061035d84846102d0565b1515610368576103e3565b610372848461028a565b915061037e84846102ad565b905080846000016000848152602001908152602001600020600101819055508184600001600083815260200190815260200160002060000181905550836000016000848152602001908152602001600020600080820160009055600182016000905550505b50505050565b60006103f68260006102ad565b9050919050565b6000821415151561040d57600080fd5b6104178483610350565b600083148061042c575061042b84846102d0565b5b151561043757600080fd5b600081148061044c575061044b84826102d0565b5b151561045757600080fd5b80610462858561028a565b14151561046e57600080fd5b8261047985836102ad565b14151561048557600080fd5b828460000160008481526020019081526020016000206001018190555080846000016000848152602001908152602001600020600001819055508184600001600085815260200190815260200160002060000181905550818460000160008381526020019081526020016000206001018190555050505050565b60008061050b83610513565b149050919050565b600061052082600061028a565b90509190505600a165627a7a723058203f6caeb6bd2ced87b59f3e82a8e24e247c359feb3462fcf287e34a931bd6b1eb0029", - "sourceMap": "25:2240:4:-;;132:2:-1;166:7;155:9;146:7;137:37;252:7;246:14;243:1;238:23;232:4;229:33;270:1;265:20;;;;222:63;;265:20;274:9;222:63;;298:9;295:1;288:20;328:4;319:7;311:22;352:7;343;336:24", - "deployedSourceMap": "25:2240:4:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;680:113;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;797;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;295:381;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1979:284;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1979:284:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1027:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1480:495;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1480:495:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;180:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;914:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;680:113;749:4;768;:8;;:15;777:5;768:15;;;;;;;;;;;:20;;;761:27;;680:113;;;;:::o;797:::-;866:4;885;:8;;:15;894:5;885:15;;;;;;;;;;;:20;;;878:27;;797:113;;;;:::o;295:381::-;365:4;455:17;533:15;381:13;389:4;381:7;:13::i;:::-;:38;;;;71:1;398:5;:21;381:38;377:71;;;436:5;429:12;;;;377:71;494:5;476:14;485:4;476:8;:14::i;:::-;:23;475:52;;;;;521:5;505:12;512:4;505:6;:12::i;:::-;:21;475:52;455:72;;71:1;552:20;560:4;566:5;552:7;:20::i;:::-;:36;551:80;;;;;71:1;594:20;602:4;608:5;594:7;:20::i;:::-;:36;551:80;533:98;;644:12;:27;;;;661:10;660:11;644:27;637:34;;295:381;;;;;;;:::o;1979:284::-;2094:9;2132;2044:21;2053:4;2059:5;2044:8;:21::i;:::-;2043:22;2039:49;;;2075:7;;2039:49;2106:20;2114:4;2120:5;2106:7;:20::i;:::-;2094:32;;2144:20;2152:4;2158:5;2144:7;:20::i;:::-;2132:32;;2193:4;2171;:8;;:14;2180:4;2171:14;;;;;;;;;;;:19;;:26;;;;2225:4;2203;:8;;:14;2212:4;2203:14;;;;;;;;;;;:19;;:26;;;;2243:4;:8;;:15;2252:5;2243:15;;;;;;;;;;;;2236:22;;;;;;;;;;;;;;1979:284;;;;;:::o;1027:107::-;1083:4;1102:27;1110:4;71:1;1102:7;:27::i;:::-;1095:34;;1027:107;;;:::o;1480:495::-;71:1;1572:5;:21;;1564:30;;;;;;;;1601:19;1608:4;1614:5;1601:6;:19::i;:::-;71:1;1635:5;:21;:46;;;;1660:21;1669:4;1675:5;1660:8;:21::i;:::-;1635:46;1627:55;;;;;;;;71:1;1696:5;:21;:46;;;;1721:21;1730:4;1736:5;1721:8;:21::i;:::-;1696:46;1688:55;;;;;;;;1782:5;1758:20;1766:4;1772:5;1758:7;:20::i;:::-;:29;1750:38;;;;;;;;1826:5;1802:20;1810:4;1816:5;1802:7;:20::i;:::-;:29;1794:38;;;;;;;;1862:5;1839:4;:8;;:15;1848:5;1839:15;;;;;;;;;;;:20;;:28;;;;1896:5;1873:4;:8;;:15;1882:5;1873:15;;;;;;;;;;;:20;;:28;;;;1931:5;1908:4;:8;;:15;1917:5;1908:15;;;;;;;;;;;:20;;:28;;;;1965:5;1942:4;:8;;:15;1951:5;1942:15;;;;;;;;;;;:20;;:28;;;;1480:495;;;;:::o;180:111::-;237:4;71:1;256:14;265:4;256:8;:14::i;:::-;:30;249:37;;180:111;;;:::o;914:109::-;972:4;991:27;999:4;71:1;991:7;:27::i;:::-;984:34;;914:109;;;:::o", - "source": "pragma solidity^0.4.11;\n\nlibrary DLL {\n\n uint constant NULL_NODE_ID = 0;\n\n struct Node {\n uint next;\n uint prev;\n }\n\n struct Data {\n mapping(uint => Node) dll;\n }\n\n function isEmpty(Data storage self) public view returns (bool) {\n return getStart(self) == NULL_NODE_ID;\n }\n\n function contains(Data storage self, uint _curr) public view returns (bool) {\n if (isEmpty(self) || _curr == NULL_NODE_ID) {\n return false;\n } \n\n bool isSingleNode = (getStart(self) == _curr) && (getEnd(self) == _curr);\n bool isNullNode = (getNext(self, _curr) == NULL_NODE_ID) && (getPrev(self, _curr) == NULL_NODE_ID);\n return isSingleNode || !isNullNode;\n }\n\n function getNext(Data storage self, uint _curr) public view returns (uint) {\n return self.dll[_curr].next;\n }\n\n function getPrev(Data storage self, uint _curr) public view returns (uint) {\n return self.dll[_curr].prev;\n }\n\n function getStart(Data storage self) public view returns (uint) {\n return getNext(self, NULL_NODE_ID);\n }\n\n function getEnd(Data storage self) public view returns (uint) {\n return getPrev(self, NULL_NODE_ID);\n }\n\n /**\n @dev Inserts a new node between _prev and _next. When inserting a node already existing in \n the list it will be automatically removed from the old position.\n @param _prev the node which _new will be inserted after\n @param _curr the id of the new node being inserted\n @param _next the node which _new will be inserted before\n */\n function insert(Data storage self, uint _prev, uint _curr, uint _next) public {\n require(_curr != NULL_NODE_ID);\n\n remove(self, _curr);\n\n require(_prev == NULL_NODE_ID || contains(self, _prev));\n require(_next == NULL_NODE_ID || contains(self, _next));\n\n require(getNext(self, _prev) == _next);\n require(getPrev(self, _next) == _prev);\n\n self.dll[_curr].prev = _prev;\n self.dll[_curr].next = _next;\n\n self.dll[_prev].next = _curr;\n self.dll[_next].prev = _curr;\n }\n\n function remove(Data storage self, uint _curr) public {\n if (!contains(self, _curr)) {\n return;\n }\n\n uint next = getNext(self, _curr);\n uint prev = getPrev(self, _curr);\n\n self.dll[next].prev = prev;\n self.dll[prev].next = next;\n\n delete self.dll[_curr];\n }\n}\n", - "sourcePath": "dll/DLL.sol", + "bytecode": "0x610553610030600b82828239805160001a6073146000811461002057610022565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600436106100a5576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806307d29ac9146100aa57806330fe0a0a146100e8578063366a5ba2146101265780636d900ed0146101685780637c11cf641461019f5780639735c51b146101d3578063c426b0061461021e578063ee4f1ac414610256575b600080fd5b6100d2600480360381019080803590602001909291908035906020019092919050505061028a565b6040518082815260200191505060405180910390f35b61011060048036038101908080359060200190929190803590602001909291905050506102ad565b6040518082815260200191505060405180910390f35b61014e60048036038101908080359060200190929190803590602001909291905050506102d0565b604051808215151515815260200191505060405180910390f35b81801561017457600080fd5b5061019d6004803603810190808035906020019092919080359060200190929190505050610350565b005b6101bd600480360381019080803590602001909291905050506103e9565b6040518082815260200191505060405180910390f35b8180156101df57600080fd5b5061021c600480360381019080803590602001909291908035906020019092919080359060200190929190803590602001909291905050506103fd565b005b61023c600480360381019080803590602001909291905050506104ff565b604051808215151515815260200191505060405180910390f35b61027460048036038101908080359060200190929190505050610513565b6040518082815260200191505060405180910390f35b600082600001600083815260200190815260200160002060000154905092915050565b600082600001600083815260200190815260200160002060010154905092915050565b60008060006102de856104ff565b806102e95750600084145b156102f75760009250610348565b8361030186610513565b148015610315575083610313866103e9565b145b91506000610323868661028a565b1480156103395750600061033786866102ad565b145b90508180610345575080155b92505b505092915050565b60008061035d84846102d0565b1515610368576103e3565b610372848461028a565b915061037e84846102ad565b905080846000016000848152602001908152602001600020600101819055508184600001600083815260200190815260200160002060000181905550836000016000848152602001908152602001600020600080820160009055600182016000905550505b50505050565b60006103f68260006102ad565b9050919050565b6000821415151561040d57600080fd5b6104178483610350565b600083148061042c575061042b84846102d0565b5b151561043757600080fd5b600081148061044c575061044b84826102d0565b5b151561045757600080fd5b80610462858561028a565b14151561046e57600080fd5b8261047985836102ad565b14151561048557600080fd5b828460000160008481526020019081526020016000206001018190555080846000016000848152602001908152602001600020600001819055508184600001600085815260200190815260200160002060000181905550818460000160008381526020019081526020016000206001018190555050505050565b60008061050b83610513565b149050919050565b600061052082600061028a565b90509190505600a165627a7a72305820a3d0c95f0a09b2fe82802192e2a1d9456001c512679e06e17b4c9aa5d0bf71490029", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100a5576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806307d29ac9146100aa57806330fe0a0a146100e8578063366a5ba2146101265780636d900ed0146101685780637c11cf641461019f5780639735c51b146101d3578063c426b0061461021e578063ee4f1ac414610256575b600080fd5b6100d2600480360381019080803590602001909291908035906020019092919050505061028a565b6040518082815260200191505060405180910390f35b61011060048036038101908080359060200190929190803590602001909291905050506102ad565b6040518082815260200191505060405180910390f35b61014e60048036038101908080359060200190929190803590602001909291905050506102d0565b604051808215151515815260200191505060405180910390f35b81801561017457600080fd5b5061019d6004803603810190808035906020019092919080359060200190929190505050610350565b005b6101bd600480360381019080803590602001909291905050506103e9565b6040518082815260200191505060405180910390f35b8180156101df57600080fd5b5061021c600480360381019080803590602001909291908035906020019092919080359060200190929190803590602001909291905050506103fd565b005b61023c600480360381019080803590602001909291905050506104ff565b604051808215151515815260200191505060405180910390f35b61027460048036038101908080359060200190929190505050610513565b6040518082815260200191505060405180910390f35b600082600001600083815260200190815260200160002060000154905092915050565b600082600001600083815260200190815260200160002060010154905092915050565b60008060006102de856104ff565b806102e95750600084145b156102f75760009250610348565b8361030186610513565b148015610315575083610313866103e9565b145b91506000610323868661028a565b1480156103395750600061033786866102ad565b145b90508180610345575080155b92505b505092915050565b60008061035d84846102d0565b1515610368576103e3565b610372848461028a565b915061037e84846102ad565b905080846000016000848152602001908152602001600020600101819055508184600001600083815260200190815260200160002060000181905550836000016000848152602001908152602001600020600080820160009055600182016000905550505b50505050565b60006103f68260006102ad565b9050919050565b6000821415151561040d57600080fd5b6104178483610350565b600083148061042c575061042b84846102d0565b5b151561043757600080fd5b600081148061044c575061044b84826102d0565b5b151561045757600080fd5b80610462858561028a565b14151561046e57600080fd5b8261047985836102ad565b14151561048557600080fd5b828460000160008481526020019081526020016000206001018190555080846000016000848152602001908152602001600020600001819055508184600001600085815260200190815260200160002060000181905550818460000160008381526020019081526020016000206001018190555050505050565b60008061050b83610513565b149050919050565b600061052082600061028a565b90509190505600a165627a7a72305820a3d0c95f0a09b2fe82802192e2a1d9456001c512679e06e17b4c9aa5d0bf71490029", + "sourceMap": "26:2260:1:-;;132:2:-1;166:7;155:9;146:7;137:37;252:7;246:14;243:1;238:23;232:4;229:33;270:1;265:20;;;;222:63;;265:20;274:9;222:63;;298:9;295:1;288:20;328:4;319:7;311:22;352:7;343;336:24", + "deployedSourceMap": "26:2260:1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;680:113;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;797;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;296:380;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2000:284;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2000:284:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1027:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1479:517;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1479:517:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;181:111;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;914:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;680:113;749:4;768;:8;;:15;777:5;768:15;;;;;;;;;;;:20;;;761:27;;680:113;;;;:::o;797:::-;866:4;885;:8;;:15;894:5;885:15;;;;;;;;;;;:20;;;878:27;;797:113;;;;:::o;296:380::-;366:4;455:17;533:15;382:13;390:4;382:7;:13::i;:::-;:38;;;;72:1;399:5;:21;382:38;378:71;;;437:5;430:12;;;;378:71;494:5;476:14;485:4;476:8;:14::i;:::-;:23;475:52;;;;;521:5;505:12;512:4;505:6;:12::i;:::-;:21;475:52;455:72;;72:1;552:20;560:4;566:5;552:7;:20::i;:::-;:36;551:80;;;;;72:1;594:20;602:4;608:5;594:7;:20::i;:::-;:36;551:80;533:98;;644:12;:27;;;;661:10;660:11;644:27;637:34;;296:380;;;;;;;:::o;2000:284::-;2115:9;2153;2065:21;2074:4;2080:5;2065:8;:21::i;:::-;2064:22;2060:49;;;2096:7;;2060:49;2127:20;2135:4;2141:5;2127:7;:20::i;:::-;2115:32;;2165:20;2173:4;2179:5;2165:7;:20::i;:::-;2153:32;;2214:4;2192;:8;;:14;2201:4;2192:14;;;;;;;;;;;:19;;:26;;;;2246:4;2224;:8;;:14;2233:4;2224:14;;;;;;;;;;;:19;;:26;;;;2264:4;:8;;:15;2273:5;2264:15;;;;;;;;;;;;2257:22;;;;;;;;;;;;;;2000:284;;;;;:::o;1027:107::-;1083:4;1102:27;1110:4;72:1;1102:7;:27::i;:::-;1095:34;;1027:107;;;:::o;1479:517::-;72:1;1593:5;:21;;1585:30;;;;;;;;1622:19;1629:4;1635:5;1622:6;:19::i;:::-;72:1;1656:5;:21;:46;;;;1681:21;1690:4;1696:5;1681:8;:21::i;:::-;1656:46;1648:55;;;;;;;;72:1;1717:5;:21;:46;;;;1742:21;1751:4;1757:5;1742:8;:21::i;:::-;1717:46;1709:55;;;;;;;;1803:5;1779:20;1787:4;1793:5;1779:7;:20::i;:::-;:29;1771:38;;;;;;;;1847:5;1823:20;1831:4;1837:5;1823:7;:20::i;:::-;:29;1815:38;;;;;;;;1883:5;1860:4;:8;;:15;1869:5;1860:15;;;;;;;;;;;:20;;:28;;;;1917:5;1894:4;:8;;:15;1903:5;1894:15;;;;;;;;;;;:20;;:28;;;;1952:5;1929:4;:8;;:15;1938:5;1929:15;;;;;;;;;;;:20;;:28;;;;1986:5;1963:4;:8;;:15;1972:5;1963:15;;;;;;;;;;;:20;;:28;;;;1479:517;;;;:::o;181:111::-;238:4;72:1;257:14;266:4;257:8;:14::i;:::-;:30;250:37;;181:111;;;:::o;914:109::-;972:4;991:27;999:4;72:1;991:7;:27::i;:::-;984:34;;914:109;;;:::o", + "source": "pragma solidity 0.4.24;\n\n\nlibrary DLL {\n\n uint constant NULL_NODE_ID = 0;\n\n struct Node {\n uint next;\n uint prev;\n }\n\n struct Data {\n mapping(uint => Node) dll;\n }\n\n function isEmpty(Data storage self) public view returns (bool) {\n return getStart(self) == NULL_NODE_ID;\n }\n\n function contains(Data storage self, uint _curr) public view returns (bool) {\n if (isEmpty(self) || _curr == NULL_NODE_ID) {\n return false;\n }\n\n bool isSingleNode = (getStart(self) == _curr) && (getEnd(self) == _curr);\n bool isNullNode = (getNext(self, _curr) == NULL_NODE_ID) && (getPrev(self, _curr) == NULL_NODE_ID);\n return isSingleNode || !isNullNode;\n }\n\n function getNext(Data storage self, uint _curr) public view returns (uint) {\n return self.dll[_curr].next;\n }\n\n function getPrev(Data storage self, uint _curr) public view returns (uint) {\n return self.dll[_curr].prev;\n }\n\n function getStart(Data storage self) public view returns (uint) {\n return getNext(self, NULL_NODE_ID);\n }\n\n function getEnd(Data storage self) public view returns (uint) {\n return getPrev(self, NULL_NODE_ID);\n }\n\n /**\n @dev Inserts a new node between _prev and _next. When inserting a node already existing in\n the list it will be automatically removed from the old position.\n @param _prev the node which _new will be inserted after\n @param _curr the id of the new node being inserted\n @param _next the node which _new will be inserted before\n */\n function insert(\n Data storage self,\n uint _prev,\n uint _curr,\n uint _next\n ) public\n {\n require(_curr != NULL_NODE_ID);\n\n remove(self, _curr);\n\n require(_prev == NULL_NODE_ID || contains(self, _prev));\n require(_next == NULL_NODE_ID || contains(self, _next));\n\n require(getNext(self, _prev) == _next);\n require(getPrev(self, _next) == _prev);\n\n self.dll[_curr].prev = _prev;\n self.dll[_curr].next = _next;\n\n self.dll[_prev].next = _curr;\n self.dll[_next].prev = _curr;\n }\n\n function remove(Data storage self, uint _curr) public {\n if (!contains(self, _curr)) {\n return;\n }\n\n uint next = getNext(self, _curr);\n uint prev = getPrev(self, _curr);\n\n self.dll[next].prev = prev;\n self.dll[prev].next = next;\n\n delete self.dll[_curr];\n }\n}\n", + "sourcePath": "/home/rob/Github/computable/contracts/DLL.sol", "ast": { - "absolutePath": "dll/DLL.sol", + "absolutePath": "/home/rob/Github/computable/contracts/DLL.sol", "exportedSymbols": { "DLL": [ - 2466 + 365 ] }, - "id": 2467, + "id": 366, "nodeType": "SourceUnit", "nodes": [ { - "id": 2167, + "id": 66, "literals": [ "solidity", - "^", "0.4", - ".11" + ".24" ], "nodeType": "PragmaDirective", - "src": "0:23:4" + "src": "0:23:1" }, { "baseContracts": [], @@ -205,20 +204,20 @@ "contractKind": "library", "documentation": null, "fullyImplemented": true, - "id": 2466, + "id": 365, "linearizedBaseContracts": [ - 2466 + 365 ], "name": "DLL", "nodeType": "ContractDefinition", "nodes": [ { "constant": true, - "id": 2170, + "id": 69, "name": "NULL_NODE_ID", "nodeType": "VariableDeclaration", - "scope": 2466, - "src": "42:30:4", + "scope": 365, + "src": "43:30:1", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -226,10 +225,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2168, + "id": 67, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "42:4:4", + "src": "43:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -238,14 +237,14 @@ "value": { "argumentTypes": null, "hexValue": "30", - "id": 2169, + "id": 68, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "71:1:4", + "src": "72:1:1", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -257,15 +256,15 @@ }, { "canonicalName": "DLL.Node", - "id": 2175, + "id": 74, "members": [ { "constant": false, - "id": 2172, + "id": 71, "name": "next", "nodeType": "VariableDeclaration", - "scope": 2175, - "src": "95:9:4", + "scope": 74, + "src": "96:9:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -273,10 +272,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2171, + "id": 70, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "95:4:4", + "src": "96:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -287,11 +286,11 @@ }, { "constant": false, - "id": 2174, + "id": 73, "name": "prev", "nodeType": "VariableDeclaration", - "scope": 2175, - "src": "110:9:4", + "scope": 74, + "src": "111:9:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -299,10 +298,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2173, + "id": 72, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "110:4:4", + "src": "111:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -314,54 +313,54 @@ ], "name": "Node", "nodeType": "StructDefinition", - "scope": 2466, - "src": "77:47:4", + "scope": 365, + "src": "78:47:1", "visibility": "public" }, { "canonicalName": "DLL.Data", - "id": 2180, + "id": 79, "members": [ { "constant": false, - "id": 2179, + "id": 78, "name": "dll", "nodeType": "VariableDeclaration", - "scope": 2180, - "src": "146:25:4", + "scope": 79, + "src": "147:25:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node)" }, "typeName": { - "id": 2178, + "id": 77, "keyType": { - "id": 2176, + "id": 75, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "154:4:4", + "src": "155:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Mapping", - "src": "146:21:4", + "src": "147:21:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node)" }, "valueType": { "contractScope": null, - "id": 2177, + "id": 76, "name": "Node", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2175, - "src": "162:4:4", + "referencedDeclaration": 74, + "src": "163:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage_ptr", + "typeIdentifier": "t_struct$_Node_$74_storage_ptr", "typeString": "struct DLL.Node" } } @@ -372,15 +371,15 @@ ], "name": "Data", "nodeType": "StructDefinition", - "scope": 2466, - "src": "128:48:4", + "scope": 365, + "src": "129:48:1", "visibility": "public" }, { "body": { - "id": 2193, + "id": 92, "nodeType": "Block", - "src": "243:48:4", + "src": "244:48:1", "statements": [ { "expression": { @@ -389,7 +388,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2191, + "id": 90, "isConstant": false, "isLValue": false, "isPure": false, @@ -399,14 +398,14 @@ "arguments": [ { "argumentTypes": null, - "id": 2188, + "id": 87, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2182, - "src": "265:4:4", + "referencedDeclaration": 81, + "src": "266:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } } @@ -414,22 +413,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } ], - "id": 2187, + "id": 86, "name": "getStart", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, - "src": "256:8:4", + "referencedDeclaration": 198, + "src": "257:8:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer) view returns (uint256)" } }, - "id": 2189, + "id": 88, "isConstant": false, "isLValue": false, "isPure": false, @@ -437,7 +436,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "256:14:4", + "src": "257:14:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -447,32 +446,32 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2190, + "id": 89, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "274:12:4", + "referencedDeclaration": 69, + "src": "275:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "256:30:4", + "src": "257:30:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 2186, - "id": 2192, + "functionReturnParameters": 85, + "id": 91, "nodeType": "Return", - "src": "249:37:4" + "src": "250:37:1" } ] }, "documentation": null, - "id": 2194, + "id": 93, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -480,31 +479,31 @@ "name": "isEmpty", "nodeType": "FunctionDefinition", "parameters": { - "id": 2183, + "id": 82, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2182, + "id": 81, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2194, - "src": "197:17:4", + "scope": 93, + "src": "198:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2181, + "id": 80, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "197:4:4", + "referencedDeclaration": 79, + "src": "198:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -512,20 +511,20 @@ "visibility": "internal" } ], - "src": "196:19:4" + "src": "197:19:1" }, "payable": false, "returnParameters": { - "id": 2186, + "id": 85, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2185, + "id": 84, "name": "", "nodeType": "VariableDeclaration", - "scope": 2194, - "src": "237:4:4", + "scope": 93, + "src": "238:4:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -533,10 +532,10 @@ "typeString": "bool" }, "typeName": { - "id": 2184, + "id": 83, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "237:4:4", + "src": "238:4:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -546,19 +545,19 @@ "visibility": "internal" } ], - "src": "236:6:4" + "src": "237:6:1" }, - "scope": 2466, - "src": "180:111:4", + "scope": 365, + "src": "181:111:1", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2253, + "id": 152, "nodeType": "Block", - "src": "371:305:4", + "src": "372:304:1", "statements": [ { "condition": { @@ -567,7 +566,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2209, + "id": 108, "isConstant": false, "isLValue": false, "isPure": false, @@ -577,14 +576,14 @@ "arguments": [ { "argumentTypes": null, - "id": 2204, + "id": 103, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2196, - "src": "389:4:4", + "referencedDeclaration": 95, + "src": "390:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } } @@ -592,22 +591,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } ], - "id": 2203, + "id": 102, "name": "isEmpty", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2194, - "src": "381:7:4", + "referencedDeclaration": 93, + "src": "382:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$returns$_t_bool_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$returns$_t_bool_$", "typeString": "function (struct DLL.Data storage pointer) view returns (bool)" } }, - "id": 2205, + "id": 104, "isConstant": false, "isLValue": false, "isPure": false, @@ -615,7 +614,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "381:13:4", + "src": "382:13:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -629,19 +628,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2208, + "id": 107, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2206, + "id": 105, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2198, - "src": "398:5:4", + "referencedDeclaration": 97, + "src": "399:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -651,50 +650,50 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2207, + "id": 106, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "407:12:4", + "referencedDeclaration": 69, + "src": "408:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "398:21:4", + "src": "399:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "381:38:4", + "src": "382:38:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 2213, + "id": 112, "nodeType": "IfStatement", - "src": "377:71:4", + "src": "378:71:1", "trueBody": { - "id": 2212, + "id": 111, "nodeType": "Block", - "src": "421:27:4", + "src": "422:27:1", "statements": [ { "expression": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 2210, + "id": 109, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "436:5:4", + "src": "437:5:1", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -702,26 +701,26 @@ }, "value": "false" }, - "functionReturnParameters": 2202, - "id": 2211, + "functionReturnParameters": 101, + "id": 110, "nodeType": "Return", - "src": "429:12:4" + "src": "430:12:1" } ] } }, { "assignments": [ - 2215 + 114 ], "declarations": [ { "constant": false, - "id": 2215, + "id": 114, "name": "isSingleNode", "nodeType": "VariableDeclaration", - "scope": 2254, - "src": "455:17:4", + "scope": 153, + "src": "455:17:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -729,10 +728,10 @@ "typeString": "bool" }, "typeName": { - "id": 2214, + "id": 113, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "455:4:4", + "src": "455:4:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -742,14 +741,14 @@ "visibility": "internal" } ], - "id": 2229, + "id": 128, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2228, + "id": 127, "isConstant": false, "isLValue": false, "isPure": false, @@ -763,7 +762,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2220, + "id": 119, "isConstant": false, "isLValue": false, "isPure": false, @@ -773,14 +772,14 @@ "arguments": [ { "argumentTypes": null, - "id": 2217, + "id": 116, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2196, - "src": "485:4:4", + "referencedDeclaration": 95, + "src": "485:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } } @@ -788,22 +787,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } ], - "id": 2216, + "id": 115, "name": "getStart", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, - "src": "476:8:4", + "referencedDeclaration": 198, + "src": "476:8:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer) view returns (uint256)" } }, - "id": 2218, + "id": 117, "isConstant": false, "isLValue": false, "isPure": false, @@ -811,7 +810,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "476:14:4", + "src": "476:14:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -821,32 +820,32 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2219, + "id": 118, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2198, - "src": "494:5:4", + "referencedDeclaration": 97, + "src": "494:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "476:23:4", + "src": "476:23:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2221, + "id": 120, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "475:25:4", + "src": "475:25:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -863,7 +862,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2226, + "id": 125, "isConstant": false, "isLValue": false, "isPure": false, @@ -873,14 +872,14 @@ "arguments": [ { "argumentTypes": null, - "id": 2223, + "id": 122, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2196, - "src": "512:4:4", + "referencedDeclaration": 95, + "src": "512:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } } @@ -888,22 +887,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } ], - "id": 2222, + "id": 121, "name": "getEnd", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2312, - "src": "505:6:4", + "referencedDeclaration": 211, + "src": "505:6:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer) view returns (uint256)" } }, - "id": 2224, + "id": 123, "isConstant": false, "isLValue": false, "isPure": false, @@ -911,7 +910,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "505:12:4", + "src": "505:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -921,58 +920,58 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2225, + "id": 124, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2198, - "src": "521:5:4", + "referencedDeclaration": 97, + "src": "521:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "505:21:4", + "src": "505:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2227, + "id": 126, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "504:23:4", + "src": "504:23:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "475:52:4", + "src": "475:52:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "455:72:4" + "src": "455:72:1" }, { "assignments": [ - 2231 + 130 ], "declarations": [ { "constant": false, - "id": 2231, + "id": 130, "name": "isNullNode", "nodeType": "VariableDeclaration", - "scope": 2254, - "src": "533:15:4", + "scope": 153, + "src": "533:15:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -980,10 +979,10 @@ "typeString": "bool" }, "typeName": { - "id": 2230, + "id": 129, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "533:4:4", + "src": "533:4:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -993,14 +992,14 @@ "visibility": "internal" } ], - "id": 2247, + "id": 146, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2246, + "id": 145, "isConstant": false, "isLValue": false, "isPure": false, @@ -1014,7 +1013,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2237, + "id": 136, "isConstant": false, "isLValue": false, "isPure": false, @@ -1024,25 +1023,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2233, + "id": 132, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2196, - "src": "560:4:4", + "referencedDeclaration": 95, + "src": "560:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2234, + "id": 133, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2198, - "src": "566:5:4", + "referencedDeclaration": 97, + "src": "566:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1052,7 +1051,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -1060,18 +1059,18 @@ "typeString": "uint256" } ], - "id": 2232, + "id": 131, "name": "getNext", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2270, - "src": "552:7:4", + "referencedDeclaration": 169, + "src": "552:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2235, + "id": 134, "isConstant": false, "isLValue": false, "isPure": false, @@ -1079,7 +1078,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "552:20:4", + "src": "552:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1089,32 +1088,32 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2236, + "id": 135, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "576:12:4", + "referencedDeclaration": 69, + "src": "576:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "552:36:4", + "src": "552:36:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2238, + "id": 137, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "551:38:4", + "src": "551:38:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1131,7 +1130,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2244, + "id": 143, "isConstant": false, "isLValue": false, "isPure": false, @@ -1141,25 +1140,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2240, + "id": 139, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2196, - "src": "602:4:4", + "referencedDeclaration": 95, + "src": "602:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2241, + "id": 140, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2198, - "src": "608:5:4", + "referencedDeclaration": 97, + "src": "608:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1169,7 +1168,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -1177,18 +1176,18 @@ "typeString": "uint256" } ], - "id": 2239, + "id": 138, "name": "getPrev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2286, - "src": "594:7:4", + "referencedDeclaration": 185, + "src": "594:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2242, + "id": 141, "isConstant": false, "isLValue": false, "isPure": false, @@ -1196,7 +1195,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "594:20:4", + "src": "594:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1206,45 +1205,45 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2243, + "id": 142, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "618:12:4", + "referencedDeclaration": 69, + "src": "618:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "594:36:4", + "src": "594:36:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2245, + "id": 144, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "593:38:4", + "src": "593:38:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "551:80:4", + "src": "551:80:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "533:98:4" + "src": "533:98:1" }, { "expression": { @@ -1253,19 +1252,19 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2251, + "id": 150, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2248, + "id": 147, "name": "isSingleNode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2215, - "src": "644:12:4", + "referencedDeclaration": 114, + "src": "644:12:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1275,7 +1274,7 @@ "operator": "||", "rightExpression": { "argumentTypes": null, - "id": 2250, + "id": 149, "isConstant": false, "isLValue": false, "isPure": false, @@ -1283,15 +1282,15 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "660:11:4", + "src": "660:11:1", "subExpression": { "argumentTypes": null, - "id": 2249, + "id": 148, "name": "isNullNode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2231, - "src": "661:10:4", + "referencedDeclaration": 130, + "src": "661:10:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1302,21 +1301,21 @@ "typeString": "bool" } }, - "src": "644:27:4", + "src": "644:27:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 2202, - "id": 2252, + "functionReturnParameters": 101, + "id": 151, "nodeType": "Return", - "src": "637:34:4" + "src": "637:34:1" } ] }, "documentation": null, - "id": 2254, + "id": 153, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1324,31 +1323,31 @@ "name": "contains", "nodeType": "FunctionDefinition", "parameters": { - "id": 2199, + "id": 98, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2196, + "id": 95, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2254, - "src": "313:17:4", + "scope": 153, + "src": "314:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2195, + "id": 94, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "313:4:4", + "referencedDeclaration": 79, + "src": "314:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -1357,11 +1356,11 @@ }, { "constant": false, - "id": 2198, + "id": 97, "name": "_curr", "nodeType": "VariableDeclaration", - "scope": 2254, - "src": "332:10:4", + "scope": 153, + "src": "333:10:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1369,10 +1368,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2197, + "id": 96, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "332:4:4", + "src": "333:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1382,20 +1381,20 @@ "visibility": "internal" } ], - "src": "312:31:4" + "src": "313:31:1" }, "payable": false, "returnParameters": { - "id": 2202, + "id": 101, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2201, + "id": 100, "name": "", "nodeType": "VariableDeclaration", - "scope": 2254, - "src": "365:4:4", + "scope": 153, + "src": "366:4:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1403,10 +1402,10 @@ "typeString": "bool" }, "typeName": { - "id": 2200, + "id": 99, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "365:4:4", + "src": "366:4:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1416,19 +1415,19 @@ "visibility": "internal" } ], - "src": "364:6:4" + "src": "365:6:1" }, - "scope": 2466, - "src": "295:381:4", + "scope": 365, + "src": "296:380:1", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2269, + "id": 168, "nodeType": "Block", - "src": "755:38:4", + "src": "755:38:1", "statements": [ { "expression": { @@ -1439,40 +1438,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2263, + "id": 162, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2256, - "src": "768:4:4", + "referencedDeclaration": 155, + "src": "768:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2264, + "id": 163, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "768:8:4", + "referencedDeclaration": 78, + "src": "768:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2266, + "id": 165, "indexExpression": { "argumentTypes": null, - "id": 2265, + "id": 164, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2258, - "src": "777:5:4", + "referencedDeclaration": 157, + "src": "777:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1483,35 +1482,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "768:15:4", + "src": "768:15:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2267, + "id": 166, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "next", "nodeType": "MemberAccess", - "referencedDeclaration": 2172, - "src": "768:20:4", + "referencedDeclaration": 71, + "src": "768:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2262, - "id": 2268, + "functionReturnParameters": 161, + "id": 167, "nodeType": "Return", - "src": "761:27:4" + "src": "761:27:1" } ] }, "documentation": null, - "id": 2270, + "id": 169, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1519,31 +1518,31 @@ "name": "getNext", "nodeType": "FunctionDefinition", "parameters": { - "id": 2259, + "id": 158, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2256, + "id": 155, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2270, - "src": "697:17:4", + "scope": 169, + "src": "697:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2255, + "id": 154, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "697:4:4", + "referencedDeclaration": 79, + "src": "697:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -1552,11 +1551,11 @@ }, { "constant": false, - "id": 2258, + "id": 157, "name": "_curr", "nodeType": "VariableDeclaration", - "scope": 2270, - "src": "716:10:4", + "scope": 169, + "src": "716:10:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1564,10 +1563,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2257, + "id": 156, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "716:4:4", + "src": "716:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1577,20 +1576,20 @@ "visibility": "internal" } ], - "src": "696:31:4" + "src": "696:31:1" }, "payable": false, "returnParameters": { - "id": 2262, + "id": 161, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2261, + "id": 160, "name": "", "nodeType": "VariableDeclaration", - "scope": 2270, - "src": "749:4:4", + "scope": 169, + "src": "749:4:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1598,10 +1597,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2260, + "id": 159, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "749:4:4", + "src": "749:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1611,19 +1610,19 @@ "visibility": "internal" } ], - "src": "748:6:4" + "src": "748:6:1" }, - "scope": 2466, - "src": "680:113:4", + "scope": 365, + "src": "680:113:1", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2285, + "id": 184, "nodeType": "Block", - "src": "872:38:4", + "src": "872:38:1", "statements": [ { "expression": { @@ -1634,40 +1633,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2279, + "id": 178, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2272, - "src": "885:4:4", + "referencedDeclaration": 171, + "src": "885:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2280, + "id": 179, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "885:8:4", + "referencedDeclaration": 78, + "src": "885:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2282, + "id": 181, "indexExpression": { "argumentTypes": null, - "id": 2281, + "id": 180, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2274, - "src": "894:5:4", + "referencedDeclaration": 173, + "src": "894:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1678,35 +1677,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "885:15:4", + "src": "885:15:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2283, + "id": 182, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "prev", "nodeType": "MemberAccess", - "referencedDeclaration": 2174, - "src": "885:20:4", + "referencedDeclaration": 73, + "src": "885:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2278, - "id": 2284, + "functionReturnParameters": 177, + "id": 183, "nodeType": "Return", - "src": "878:27:4" + "src": "878:27:1" } ] }, "documentation": null, - "id": 2286, + "id": 185, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1714,31 +1713,31 @@ "name": "getPrev", "nodeType": "FunctionDefinition", "parameters": { - "id": 2275, + "id": 174, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2272, + "id": 171, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2286, - "src": "814:17:4", + "scope": 185, + "src": "814:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2271, + "id": 170, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "814:4:4", + "referencedDeclaration": 79, + "src": "814:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -1747,11 +1746,11 @@ }, { "constant": false, - "id": 2274, + "id": 173, "name": "_curr", "nodeType": "VariableDeclaration", - "scope": 2286, - "src": "833:10:4", + "scope": 185, + "src": "833:10:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1759,10 +1758,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2273, + "id": 172, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "833:4:4", + "src": "833:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1772,20 +1771,20 @@ "visibility": "internal" } ], - "src": "813:31:4" + "src": "813:31:1" }, "payable": false, "returnParameters": { - "id": 2278, + "id": 177, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2277, + "id": 176, "name": "", "nodeType": "VariableDeclaration", - "scope": 2286, - "src": "866:4:4", + "scope": 185, + "src": "866:4:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1793,10 +1792,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2276, + "id": 175, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "866:4:4", + "src": "866:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1806,19 +1805,19 @@ "visibility": "internal" } ], - "src": "865:6:4" + "src": "865:6:1" }, - "scope": 2466, - "src": "797:113:4", + "scope": 365, + "src": "797:113:1", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2298, + "id": 197, "nodeType": "Block", - "src": "978:45:4", + "src": "978:45:1", "statements": [ { "expression": { @@ -1826,25 +1825,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2294, + "id": 193, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2288, - "src": "999:4:4", + "referencedDeclaration": 187, + "src": "999:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2295, + "id": 194, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "1005:12:4", + "referencedDeclaration": 69, + "src": "1005:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1854,7 +1853,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -1862,18 +1861,18 @@ "typeString": "uint256" } ], - "id": 2293, + "id": 192, "name": "getNext", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2270, - "src": "991:7:4", + "referencedDeclaration": 169, + "src": "991:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2296, + "id": 195, "isConstant": false, "isLValue": false, "isPure": false, @@ -1881,21 +1880,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "991:27:4", + "src": "991:27:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2292, - "id": 2297, + "functionReturnParameters": 191, + "id": 196, "nodeType": "Return", - "src": "984:34:4" + "src": "984:34:1" } ] }, "documentation": null, - "id": 2299, + "id": 198, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1903,31 +1902,31 @@ "name": "getStart", "nodeType": "FunctionDefinition", "parameters": { - "id": 2289, + "id": 188, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2288, + "id": 187, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2299, - "src": "932:17:4", + "scope": 198, + "src": "932:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2287, + "id": 186, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "932:4:4", + "referencedDeclaration": 79, + "src": "932:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -1935,20 +1934,20 @@ "visibility": "internal" } ], - "src": "931:19:4" + "src": "931:19:1" }, "payable": false, "returnParameters": { - "id": 2292, + "id": 191, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2291, + "id": 190, "name": "", "nodeType": "VariableDeclaration", - "scope": 2299, - "src": "972:4:4", + "scope": 198, + "src": "972:4:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1956,10 +1955,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2290, + "id": 189, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "972:4:4", + "src": "972:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1969,19 +1968,19 @@ "visibility": "internal" } ], - "src": "971:6:4" + "src": "971:6:1" }, - "scope": 2466, - "src": "914:109:4", + "scope": 365, + "src": "914:109:1", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2311, + "id": 210, "nodeType": "Block", - "src": "1089:45:4", + "src": "1089:45:1", "statements": [ { "expression": { @@ -1989,25 +1988,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2307, + "id": 206, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2301, - "src": "1110:4:4", + "referencedDeclaration": 200, + "src": "1110:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2308, + "id": 207, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "1116:12:4", + "referencedDeclaration": 69, + "src": "1116:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2017,7 +2016,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -2025,18 +2024,18 @@ "typeString": "uint256" } ], - "id": 2306, + "id": 205, "name": "getPrev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2286, - "src": "1102:7:4", + "referencedDeclaration": 185, + "src": "1102:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2309, + "id": 208, "isConstant": false, "isLValue": false, "isPure": false, @@ -2044,21 +2043,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1102:27:4", + "src": "1102:27:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2305, - "id": 2310, + "functionReturnParameters": 204, + "id": 209, "nodeType": "Return", - "src": "1095:34:4" + "src": "1095:34:1" } ] }, "documentation": null, - "id": 2312, + "id": 211, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -2066,31 +2065,31 @@ "name": "getEnd", "nodeType": "FunctionDefinition", "parameters": { - "id": 2302, + "id": 201, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2301, + "id": 200, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2312, - "src": "1043:17:4", + "scope": 211, + "src": "1043:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2300, + "id": 199, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "1043:4:4", + "referencedDeclaration": 79, + "src": "1043:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -2098,20 +2097,20 @@ "visibility": "internal" } ], - "src": "1042:19:4" + "src": "1042:19:1" }, "payable": false, "returnParameters": { - "id": 2305, + "id": 204, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2304, + "id": 203, "name": "", "nodeType": "VariableDeclaration", - "scope": 2312, - "src": "1083:4:4", + "scope": 211, + "src": "1083:4:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2119,10 +2118,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2303, + "id": 202, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1083:4:4", + "src": "1083:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2132,19 +2131,19 @@ "visibility": "internal" } ], - "src": "1082:6:4" + "src": "1082:6:1" }, - "scope": 2466, - "src": "1027:107:4", + "scope": 365, + "src": "1027:107:1", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2410, + "id": 309, "nodeType": "Block", - "src": "1558:417:4", + "src": "1579:417:1", "statements": [ { "expression": { @@ -2156,19 +2155,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2326, + "id": 225, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2324, + "id": 223, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "1572:5:4", + "referencedDeclaration": 217, + "src": "1593:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2178,18 +2177,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 2325, + "id": 224, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "1581:12:4", + "referencedDeclaration": 69, + "src": "1602:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1572:21:4", + "src": "1593:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2203,21 +2202,21 @@ "typeString": "bool" } ], - "id": 2323, + "id": 222, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "1564:7:4", + "referencedDeclaration": 3705, + "src": "1585:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2327, + "id": 226, "isConstant": false, "isLValue": false, "isPure": false, @@ -2225,15 +2224,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1564:30:4", + "src": "1585:30:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2328, + "id": 227, "nodeType": "ExpressionStatement", - "src": "1564:30:4" + "src": "1585:30:1" }, { "expression": { @@ -2241,25 +2240,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2330, + "id": 229, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1608:4:4", + "referencedDeclaration": 213, + "src": "1629:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2331, + "id": 230, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "1614:5:4", + "referencedDeclaration": 217, + "src": "1635:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2269,7 +2268,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -2277,18 +2276,18 @@ "typeString": "uint256" } ], - "id": 2329, + "id": 228, "name": "remove", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2465, - "src": "1601:6:4", + "referencedDeclaration": 364, + "src": "1622:6:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$__$", + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$__$", "typeString": "function (struct DLL.Data storage pointer,uint256)" } }, - "id": 2332, + "id": 231, "isConstant": false, "isLValue": false, "isPure": false, @@ -2296,15 +2295,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1601:19:4", + "src": "1622:19:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2333, + "id": 232, "nodeType": "ExpressionStatement", - "src": "1601:19:4" + "src": "1622:19:1" }, { "expression": { @@ -2316,7 +2315,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2342, + "id": 241, "isConstant": false, "isLValue": false, "isPure": false, @@ -2327,19 +2326,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2337, + "id": 236, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2335, + "id": 234, "name": "_prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2316, - "src": "1635:5:4", + "referencedDeclaration": 215, + "src": "1656:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2349,18 +2348,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2336, + "id": 235, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "1644:12:4", + "referencedDeclaration": 69, + "src": "1665:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1635:21:4", + "src": "1656:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2373,25 +2372,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2339, + "id": 238, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1669:4:4", + "referencedDeclaration": 213, + "src": "1690:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2340, + "id": 239, "name": "_prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2316, - "src": "1675:5:4", + "referencedDeclaration": 215, + "src": "1696:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2401,7 +2400,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -2409,18 +2408,18 @@ "typeString": "uint256" } ], - "id": 2338, + "id": 237, "name": "contains", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2254, - "src": "1660:8:4", + "referencedDeclaration": 153, + "src": "1681:8:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_bool_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_bool_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (bool)" } }, - "id": 2341, + "id": 240, "isConstant": false, "isLValue": false, "isPure": false, @@ -2428,13 +2427,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1660:21:4", + "src": "1681:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1635:46:4", + "src": "1656:46:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2448,21 +2447,21 @@ "typeString": "bool" } ], - "id": 2334, + "id": 233, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "1627:7:4", + "referencedDeclaration": 3705, + "src": "1648:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2343, + "id": 242, "isConstant": false, "isLValue": false, "isPure": false, @@ -2470,15 +2469,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1627:55:4", + "src": "1648:55:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2344, + "id": 243, "nodeType": "ExpressionStatement", - "src": "1627:55:4" + "src": "1648:55:1" }, { "expression": { @@ -2490,7 +2489,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2353, + "id": 252, "isConstant": false, "isLValue": false, "isPure": false, @@ -2501,19 +2500,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2348, + "id": 247, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2346, + "id": 245, "name": "_next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2320, - "src": "1696:5:4", + "referencedDeclaration": 219, + "src": "1717:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2523,18 +2522,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2347, + "id": 246, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "1705:12:4", + "referencedDeclaration": 69, + "src": "1726:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1696:21:4", + "src": "1717:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2547,25 +2546,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2350, + "id": 249, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1730:4:4", + "referencedDeclaration": 213, + "src": "1751:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2351, + "id": 250, "name": "_next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2320, - "src": "1736:5:4", + "referencedDeclaration": 219, + "src": "1757:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2575,7 +2574,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -2583,18 +2582,18 @@ "typeString": "uint256" } ], - "id": 2349, + "id": 248, "name": "contains", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2254, - "src": "1721:8:4", + "referencedDeclaration": 153, + "src": "1742:8:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_bool_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_bool_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (bool)" } }, - "id": 2352, + "id": 251, "isConstant": false, "isLValue": false, "isPure": false, @@ -2602,13 +2601,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1721:21:4", + "src": "1742:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1696:46:4", + "src": "1717:46:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2622,21 +2621,21 @@ "typeString": "bool" } ], - "id": 2345, + "id": 244, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "1688:7:4", + "referencedDeclaration": 3705, + "src": "1709:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2354, + "id": 253, "isConstant": false, "isLValue": false, "isPure": false, @@ -2644,15 +2643,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1688:55:4", + "src": "1709:55:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2355, + "id": 254, "nodeType": "ExpressionStatement", - "src": "1688:55:4" + "src": "1709:55:1" }, { "expression": { @@ -2664,7 +2663,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2362, + "id": 261, "isConstant": false, "isLValue": false, "isPure": false, @@ -2674,25 +2673,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2358, + "id": 257, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1766:4:4", + "referencedDeclaration": 213, + "src": "1787:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2359, + "id": 258, "name": "_prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2316, - "src": "1772:5:4", + "referencedDeclaration": 215, + "src": "1793:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2702,7 +2701,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -2710,18 +2709,18 @@ "typeString": "uint256" } ], - "id": 2357, + "id": 256, "name": "getNext", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2270, - "src": "1758:7:4", + "referencedDeclaration": 169, + "src": "1779:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2360, + "id": 259, "isConstant": false, "isLValue": false, "isPure": false, @@ -2729,7 +2728,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1758:20:4", + "src": "1779:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2739,18 +2738,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2361, + "id": 260, "name": "_next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2320, - "src": "1782:5:4", + "referencedDeclaration": 219, + "src": "1803:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1758:29:4", + "src": "1779:29:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2764,21 +2763,21 @@ "typeString": "bool" } ], - "id": 2356, + "id": 255, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "1750:7:4", + "referencedDeclaration": 3705, + "src": "1771:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2363, + "id": 262, "isConstant": false, "isLValue": false, "isPure": false, @@ -2786,15 +2785,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1750:38:4", + "src": "1771:38:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2364, + "id": 263, "nodeType": "ExpressionStatement", - "src": "1750:38:4" + "src": "1771:38:1" }, { "expression": { @@ -2806,7 +2805,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2371, + "id": 270, "isConstant": false, "isLValue": false, "isPure": false, @@ -2816,25 +2815,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2367, + "id": 266, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1810:4:4", + "referencedDeclaration": 213, + "src": "1831:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2368, + "id": 267, "name": "_next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2320, - "src": "1816:5:4", + "referencedDeclaration": 219, + "src": "1837:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2844,7 +2843,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -2852,18 +2851,18 @@ "typeString": "uint256" } ], - "id": 2366, + "id": 265, "name": "getPrev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2286, - "src": "1802:7:4", + "referencedDeclaration": 185, + "src": "1823:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2369, + "id": 268, "isConstant": false, "isLValue": false, "isPure": false, @@ -2871,7 +2870,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1802:20:4", + "src": "1823:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2881,18 +2880,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2370, + "id": 269, "name": "_prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2316, - "src": "1826:5:4", + "referencedDeclaration": 215, + "src": "1847:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1802:29:4", + "src": "1823:29:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2906,21 +2905,21 @@ "typeString": "bool" } ], - "id": 2365, + "id": 264, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "1794:7:4", + "referencedDeclaration": 3705, + "src": "1815:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2372, + "id": 271, "isConstant": false, "isLValue": false, "isPure": false, @@ -2928,20 +2927,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1794:38:4", + "src": "1815:38:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2373, + "id": 272, "nodeType": "ExpressionStatement", - "src": "1794:38:4" + "src": "1815:38:1" }, { "expression": { "argumentTypes": null, - "id": 2381, + "id": 280, "isConstant": false, "isLValue": false, "isPure": false, @@ -2954,40 +2953,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2374, + "id": 273, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1839:4:4", + "referencedDeclaration": 213, + "src": "1860:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2377, + "id": 276, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "1839:8:4", + "referencedDeclaration": 78, + "src": "1860:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2378, + "id": 277, "indexExpression": { "argumentTypes": null, - "id": 2376, + "id": 275, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "1848:5:4", + "referencedDeclaration": 217, + "src": "1869:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2998,21 +2997,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1839:15:4", + "src": "1860:15:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2379, + "id": 278, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "prev", "nodeType": "MemberAccess", - "referencedDeclaration": 2174, - "src": "1839:20:4", + "referencedDeclaration": 73, + "src": "1860:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3022,31 +3021,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2380, + "id": 279, "name": "_prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2316, - "src": "1862:5:4", + "referencedDeclaration": 215, + "src": "1883:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1839:28:4", + "src": "1860:28:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2382, + "id": 281, "nodeType": "ExpressionStatement", - "src": "1839:28:4" + "src": "1860:28:1" }, { "expression": { "argumentTypes": null, - "id": 2390, + "id": 289, "isConstant": false, "isLValue": false, "isPure": false, @@ -3059,40 +3058,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2383, + "id": 282, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1873:4:4", + "referencedDeclaration": 213, + "src": "1894:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2386, + "id": 285, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "1873:8:4", + "referencedDeclaration": 78, + "src": "1894:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2387, + "id": 286, "indexExpression": { "argumentTypes": null, - "id": 2385, + "id": 284, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "1882:5:4", + "referencedDeclaration": 217, + "src": "1903:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3103,21 +3102,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1873:15:4", + "src": "1894:15:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2388, + "id": 287, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "next", "nodeType": "MemberAccess", - "referencedDeclaration": 2172, - "src": "1873:20:4", + "referencedDeclaration": 71, + "src": "1894:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3127,31 +3126,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2389, + "id": 288, "name": "_next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2320, - "src": "1896:5:4", + "referencedDeclaration": 219, + "src": "1917:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1873:28:4", + "src": "1894:28:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2391, + "id": 290, "nodeType": "ExpressionStatement", - "src": "1873:28:4" + "src": "1894:28:1" }, { "expression": { "argumentTypes": null, - "id": 2399, + "id": 298, "isConstant": false, "isLValue": false, "isPure": false, @@ -3164,40 +3163,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2392, + "id": 291, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1908:4:4", + "referencedDeclaration": 213, + "src": "1929:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2395, + "id": 294, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "1908:8:4", + "referencedDeclaration": 78, + "src": "1929:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2396, + "id": 295, "indexExpression": { "argumentTypes": null, - "id": 2394, + "id": 293, "name": "_prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2316, - "src": "1917:5:4", + "referencedDeclaration": 215, + "src": "1938:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3208,21 +3207,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1908:15:4", + "src": "1929:15:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2397, + "id": 296, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "next", "nodeType": "MemberAccess", - "referencedDeclaration": 2172, - "src": "1908:20:4", + "referencedDeclaration": 71, + "src": "1929:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3232,31 +3231,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2398, + "id": 297, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "1931:5:4", + "referencedDeclaration": 217, + "src": "1952:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1908:28:4", + "src": "1929:28:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2400, + "id": 299, "nodeType": "ExpressionStatement", - "src": "1908:28:4" + "src": "1929:28:1" }, { "expression": { "argumentTypes": null, - "id": 2408, + "id": 307, "isConstant": false, "isLValue": false, "isPure": false, @@ -3269,40 +3268,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2401, + "id": 300, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1942:4:4", + "referencedDeclaration": 213, + "src": "1963:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2404, + "id": 303, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "1942:8:4", + "referencedDeclaration": 78, + "src": "1963:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2405, + "id": 304, "indexExpression": { "argumentTypes": null, - "id": 2403, + "id": 302, "name": "_next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2320, - "src": "1951:5:4", + "referencedDeclaration": 219, + "src": "1972:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3313,21 +3312,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1942:15:4", + "src": "1963:15:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2406, + "id": 305, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "prev", "nodeType": "MemberAccess", - "referencedDeclaration": 2174, - "src": "1942:20:4", + "referencedDeclaration": 73, + "src": "1963:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3337,31 +3336,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2407, + "id": 306, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "1965:5:4", + "referencedDeclaration": 217, + "src": "1986:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1942:28:4", + "src": "1963:28:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2409, + "id": 308, "nodeType": "ExpressionStatement", - "src": "1942:28:4" + "src": "1963:28:1" } ] }, - "documentation": "@dev Inserts a new node between _prev and _next. When inserting a node already existing in \nthe list it will be automatically removed from the old position.\n@param _prev the node which _new will be inserted after\n@param _curr the id of the new node being inserted\n@param _next the node which _new will be inserted before", - "id": 2411, + "documentation": "@dev Inserts a new node between _prev and _next. When inserting a node already existing in\nthe list it will be automatically removed from the old position.\n@param _prev the node which _new will be inserted after\n@param _curr the id of the new node being inserted\n@param _next the node which _new will be inserted before", + "id": 310, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -3369,31 +3368,31 @@ "name": "insert", "nodeType": "FunctionDefinition", "parameters": { - "id": 2321, + "id": 220, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2314, + "id": 213, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2411, - "src": "1496:17:4", + "scope": 310, + "src": "1500:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2313, + "id": 212, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "1496:4:4", + "referencedDeclaration": 79, + "src": "1500:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -3402,11 +3401,11 @@ }, { "constant": false, - "id": 2316, + "id": 215, "name": "_prev", "nodeType": "VariableDeclaration", - "scope": 2411, - "src": "1515:10:4", + "scope": 310, + "src": "1523:10:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3414,10 +3413,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2315, + "id": 214, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1515:4:4", + "src": "1523:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3428,11 +3427,11 @@ }, { "constant": false, - "id": 2318, + "id": 217, "name": "_curr", "nodeType": "VariableDeclaration", - "scope": 2411, - "src": "1527:10:4", + "scope": 310, + "src": "1539:10:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3440,10 +3439,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2317, + "id": 216, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1527:4:4", + "src": "1539:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3454,11 +3453,11 @@ }, { "constant": false, - "id": 2320, + "id": 219, "name": "_next", "nodeType": "VariableDeclaration", - "scope": 2411, - "src": "1539:10:4", + "scope": 310, + "src": "1555:10:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3466,10 +3465,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2319, + "id": 218, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1539:4:4", + "src": "1555:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3479,31 +3478,31 @@ "visibility": "internal" } ], - "src": "1495:55:4" + "src": "1494:75:1" }, "payable": false, "returnParameters": { - "id": 2322, + "id": 221, "nodeType": "ParameterList", "parameters": [], - "src": "1558:0:4" + "src": "1579:0:1" }, - "scope": 2466, - "src": "1480:495:4", + "scope": 365, + "src": "1479:517:1", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2464, + "id": 363, "nodeType": "Block", - "src": "2033:230:4", + "src": "2054:230:1", "statements": [ { "condition": { "argumentTypes": null, - "id": 2422, + "id": 321, "isConstant": false, "isLValue": false, "isPure": false, @@ -3511,31 +3510,31 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2043:22:4", + "src": "2064:22:1", "subExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2419, + "id": 318, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, - "src": "2053:4:4", + "referencedDeclaration": 312, + "src": "2074:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2420, + "id": 319, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2415, - "src": "2059:5:4", + "referencedDeclaration": 314, + "src": "2080:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3545,7 +3544,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -3553,18 +3552,18 @@ "typeString": "uint256" } ], - "id": 2418, + "id": 317, "name": "contains", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2254, - "src": "2044:8:4", + "referencedDeclaration": 153, + "src": "2065:8:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_bool_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_bool_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (bool)" } }, - "id": 2421, + "id": 320, "isConstant": false, "isLValue": false, "isPure": false, @@ -3572,7 +3571,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2044:21:4", + "src": "2065:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3584,36 +3583,36 @@ } }, "falseBody": null, - "id": 2425, + "id": 324, "nodeType": "IfStatement", - "src": "2039:49:4", + "src": "2060:49:1", "trueBody": { - "id": 2424, + "id": 323, "nodeType": "Block", - "src": "2067:21:4", + "src": "2088:21:1", "statements": [ { "expression": null, - "functionReturnParameters": 2417, - "id": 2423, + "functionReturnParameters": 316, + "id": 322, "nodeType": "Return", - "src": "2075:7:4" + "src": "2096:7:1" } ] } }, { "assignments": [ - 2427 + 326 ], "declarations": [ { "constant": false, - "id": 2427, + "id": 326, "name": "next", "nodeType": "VariableDeclaration", - "scope": 2465, - "src": "2094:9:4", + "scope": 364, + "src": "2115:9:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3621,10 +3620,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2426, + "id": 325, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2094:4:4", + "src": "2115:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3634,31 +3633,31 @@ "visibility": "internal" } ], - "id": 2432, + "id": 331, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2429, + "id": 328, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, - "src": "2114:4:4", + "referencedDeclaration": 312, + "src": "2135:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2430, + "id": 329, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2415, - "src": "2120:5:4", + "referencedDeclaration": 314, + "src": "2141:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3668,7 +3667,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -3676,18 +3675,18 @@ "typeString": "uint256" } ], - "id": 2428, + "id": 327, "name": "getNext", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2270, - "src": "2106:7:4", + "referencedDeclaration": 169, + "src": "2127:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2431, + "id": 330, "isConstant": false, "isLValue": false, "isPure": false, @@ -3695,27 +3694,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2106:20:4", + "src": "2127:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "2094:32:4" + "src": "2115:32:1" }, { "assignments": [ - 2434 + 333 ], "declarations": [ { "constant": false, - "id": 2434, + "id": 333, "name": "prev", "nodeType": "VariableDeclaration", - "scope": 2465, - "src": "2132:9:4", + "scope": 364, + "src": "2153:9:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3723,10 +3722,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2433, + "id": 332, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2132:4:4", + "src": "2153:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3736,31 +3735,31 @@ "visibility": "internal" } ], - "id": 2439, + "id": 338, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2436, + "id": 335, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, - "src": "2152:4:4", + "referencedDeclaration": 312, + "src": "2173:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2437, + "id": 336, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2415, - "src": "2158:5:4", + "referencedDeclaration": 314, + "src": "2179:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3770,7 +3769,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -3778,18 +3777,18 @@ "typeString": "uint256" } ], - "id": 2435, + "id": 334, "name": "getPrev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2286, - "src": "2144:7:4", + "referencedDeclaration": 185, + "src": "2165:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2438, + "id": 337, "isConstant": false, "isLValue": false, "isPure": false, @@ -3797,19 +3796,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2144:20:4", + "src": "2165:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "2132:32:4" + "src": "2153:32:1" }, { "expression": { "argumentTypes": null, - "id": 2447, + "id": 346, "isConstant": false, "isLValue": false, "isPure": false, @@ -3822,40 +3821,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2440, + "id": 339, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, - "src": "2171:4:4", + "referencedDeclaration": 312, + "src": "2192:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2443, + "id": 342, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "2171:8:4", + "referencedDeclaration": 78, + "src": "2192:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2444, + "id": 343, "indexExpression": { "argumentTypes": null, - "id": 2442, + "id": 341, "name": "next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2427, - "src": "2180:4:4", + "referencedDeclaration": 326, + "src": "2201:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3866,21 +3865,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2171:14:4", + "src": "2192:14:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2445, + "id": 344, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "prev", "nodeType": "MemberAccess", - "referencedDeclaration": 2174, - "src": "2171:19:4", + "referencedDeclaration": 73, + "src": "2192:19:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3890,31 +3889,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2446, + "id": 345, "name": "prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2434, - "src": "2193:4:4", + "referencedDeclaration": 333, + "src": "2214:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2171:26:4", + "src": "2192:26:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2448, + "id": 347, "nodeType": "ExpressionStatement", - "src": "2171:26:4" + "src": "2192:26:1" }, { "expression": { "argumentTypes": null, - "id": 2456, + "id": 355, "isConstant": false, "isLValue": false, "isPure": false, @@ -3927,40 +3926,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2449, + "id": 348, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, - "src": "2203:4:4", + "referencedDeclaration": 312, + "src": "2224:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2452, + "id": 351, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "2203:8:4", + "referencedDeclaration": 78, + "src": "2224:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2453, + "id": 352, "indexExpression": { "argumentTypes": null, - "id": 2451, + "id": 350, "name": "prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2434, - "src": "2212:4:4", + "referencedDeclaration": 333, + "src": "2233:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3971,21 +3970,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2203:14:4", + "src": "2224:14:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2454, + "id": 353, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "next", "nodeType": "MemberAccess", - "referencedDeclaration": 2172, - "src": "2203:19:4", + "referencedDeclaration": 71, + "src": "2224:19:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3995,31 +3994,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2455, + "id": 354, "name": "next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2427, - "src": "2225:4:4", + "referencedDeclaration": 326, + "src": "2246:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2203:26:4", + "src": "2224:26:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2457, + "id": 356, "nodeType": "ExpressionStatement", - "src": "2203:26:4" + "src": "2224:26:1" }, { "expression": { "argumentTypes": null, - "id": 2462, + "id": 361, "isConstant": false, "isLValue": false, "isPure": false, @@ -4027,47 +4026,47 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "2236:22:4", + "src": "2257:22:1", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2458, + "id": 357, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, - "src": "2243:4:4", + "referencedDeclaration": 312, + "src": "2264:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2459, + "id": 358, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "2243:8:4", + "referencedDeclaration": 78, + "src": "2264:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2461, + "id": 360, "indexExpression": { "argumentTypes": null, - "id": 2460, + "id": 359, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2415, - "src": "2252:5:4", + "referencedDeclaration": 314, + "src": "2273:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4078,9 +4077,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2243:15:4", + "src": "2264:15:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, @@ -4089,14 +4088,14 @@ "typeString": "tuple()" } }, - "id": 2463, + "id": 362, "nodeType": "ExpressionStatement", - "src": "2236:22:4" + "src": "2257:22:1" } ] }, "documentation": null, - "id": 2465, + "id": 364, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -4104,31 +4103,31 @@ "name": "remove", "nodeType": "FunctionDefinition", "parameters": { - "id": 2416, + "id": 315, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2413, + "id": 312, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2465, - "src": "1995:17:4", + "scope": 364, + "src": "2016:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2412, + "id": 311, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "1995:4:4", + "referencedDeclaration": 79, + "src": "2016:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -4137,11 +4136,11 @@ }, { "constant": false, - "id": 2415, + "id": 314, "name": "_curr", "nodeType": "VariableDeclaration", - "scope": 2465, - "src": "2014:10:4", + "scope": 364, + "src": "2035:10:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4149,10 +4148,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2414, + "id": 313, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2014:4:4", + "src": "2035:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4162,48 +4161,47 @@ "visibility": "internal" } ], - "src": "1994:31:4" + "src": "2015:31:1" }, "payable": false, "returnParameters": { - "id": 2417, + "id": 316, "nodeType": "ParameterList", "parameters": [], - "src": "2033:0:4" + "src": "2054:0:1" }, - "scope": 2466, - "src": "1979:284:4", + "scope": 365, + "src": "2000:284:1", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 2467, - "src": "25:2240:4" + "scope": 366, + "src": "26:2260:1" } ], - "src": "0:2266:4" + "src": "0:2287:1" }, "legacyAST": { - "absolutePath": "dll/DLL.sol", + "absolutePath": "/home/rob/Github/computable/contracts/DLL.sol", "exportedSymbols": { "DLL": [ - 2466 + 365 ] }, - "id": 2467, + "id": 366, "nodeType": "SourceUnit", "nodes": [ { - "id": 2167, + "id": 66, "literals": [ "solidity", - "^", "0.4", - ".11" + ".24" ], "nodeType": "PragmaDirective", - "src": "0:23:4" + "src": "0:23:1" }, { "baseContracts": [], @@ -4211,20 +4209,20 @@ "contractKind": "library", "documentation": null, "fullyImplemented": true, - "id": 2466, + "id": 365, "linearizedBaseContracts": [ - 2466 + 365 ], "name": "DLL", "nodeType": "ContractDefinition", "nodes": [ { "constant": true, - "id": 2170, + "id": 69, "name": "NULL_NODE_ID", "nodeType": "VariableDeclaration", - "scope": 2466, - "src": "42:30:4", + "scope": 365, + "src": "43:30:1", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -4232,10 +4230,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2168, + "id": 67, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "42:4:4", + "src": "43:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4244,14 +4242,14 @@ "value": { "argumentTypes": null, "hexValue": "30", - "id": 2169, + "id": 68, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "71:1:4", + "src": "72:1:1", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -4263,15 +4261,15 @@ }, { "canonicalName": "DLL.Node", - "id": 2175, + "id": 74, "members": [ { "constant": false, - "id": 2172, + "id": 71, "name": "next", "nodeType": "VariableDeclaration", - "scope": 2175, - "src": "95:9:4", + "scope": 74, + "src": "96:9:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4279,10 +4277,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2171, + "id": 70, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "95:4:4", + "src": "96:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4293,11 +4291,11 @@ }, { "constant": false, - "id": 2174, + "id": 73, "name": "prev", "nodeType": "VariableDeclaration", - "scope": 2175, - "src": "110:9:4", + "scope": 74, + "src": "111:9:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4305,10 +4303,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2173, + "id": 72, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "110:4:4", + "src": "111:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4320,54 +4318,54 @@ ], "name": "Node", "nodeType": "StructDefinition", - "scope": 2466, - "src": "77:47:4", + "scope": 365, + "src": "78:47:1", "visibility": "public" }, { "canonicalName": "DLL.Data", - "id": 2180, + "id": 79, "members": [ { "constant": false, - "id": 2179, + "id": 78, "name": "dll", "nodeType": "VariableDeclaration", - "scope": 2180, - "src": "146:25:4", + "scope": 79, + "src": "147:25:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node)" }, "typeName": { - "id": 2178, + "id": 77, "keyType": { - "id": 2176, + "id": 75, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "154:4:4", + "src": "155:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Mapping", - "src": "146:21:4", + "src": "147:21:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node)" }, "valueType": { "contractScope": null, - "id": 2177, + "id": 76, "name": "Node", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2175, - "src": "162:4:4", + "referencedDeclaration": 74, + "src": "163:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage_ptr", + "typeIdentifier": "t_struct$_Node_$74_storage_ptr", "typeString": "struct DLL.Node" } } @@ -4378,15 +4376,15 @@ ], "name": "Data", "nodeType": "StructDefinition", - "scope": 2466, - "src": "128:48:4", + "scope": 365, + "src": "129:48:1", "visibility": "public" }, { "body": { - "id": 2193, + "id": 92, "nodeType": "Block", - "src": "243:48:4", + "src": "244:48:1", "statements": [ { "expression": { @@ -4395,7 +4393,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2191, + "id": 90, "isConstant": false, "isLValue": false, "isPure": false, @@ -4405,14 +4403,14 @@ "arguments": [ { "argumentTypes": null, - "id": 2188, + "id": 87, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2182, - "src": "265:4:4", + "referencedDeclaration": 81, + "src": "266:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } } @@ -4420,22 +4418,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } ], - "id": 2187, + "id": 86, "name": "getStart", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, - "src": "256:8:4", + "referencedDeclaration": 198, + "src": "257:8:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer) view returns (uint256)" } }, - "id": 2189, + "id": 88, "isConstant": false, "isLValue": false, "isPure": false, @@ -4443,7 +4441,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "256:14:4", + "src": "257:14:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4453,32 +4451,32 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2190, + "id": 89, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "274:12:4", + "referencedDeclaration": 69, + "src": "275:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "256:30:4", + "src": "257:30:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 2186, - "id": 2192, + "functionReturnParameters": 85, + "id": 91, "nodeType": "Return", - "src": "249:37:4" + "src": "250:37:1" } ] }, "documentation": null, - "id": 2194, + "id": 93, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4486,31 +4484,31 @@ "name": "isEmpty", "nodeType": "FunctionDefinition", "parameters": { - "id": 2183, + "id": 82, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2182, + "id": 81, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2194, - "src": "197:17:4", + "scope": 93, + "src": "198:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2181, + "id": 80, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "197:4:4", + "referencedDeclaration": 79, + "src": "198:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -4518,20 +4516,20 @@ "visibility": "internal" } ], - "src": "196:19:4" + "src": "197:19:1" }, "payable": false, "returnParameters": { - "id": 2186, + "id": 85, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2185, + "id": 84, "name": "", "nodeType": "VariableDeclaration", - "scope": 2194, - "src": "237:4:4", + "scope": 93, + "src": "238:4:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4539,10 +4537,10 @@ "typeString": "bool" }, "typeName": { - "id": 2184, + "id": 83, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "237:4:4", + "src": "238:4:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4552,19 +4550,19 @@ "visibility": "internal" } ], - "src": "236:6:4" + "src": "237:6:1" }, - "scope": 2466, - "src": "180:111:4", + "scope": 365, + "src": "181:111:1", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2253, + "id": 152, "nodeType": "Block", - "src": "371:305:4", + "src": "372:304:1", "statements": [ { "condition": { @@ -4573,7 +4571,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2209, + "id": 108, "isConstant": false, "isLValue": false, "isPure": false, @@ -4583,14 +4581,14 @@ "arguments": [ { "argumentTypes": null, - "id": 2204, + "id": 103, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2196, - "src": "389:4:4", + "referencedDeclaration": 95, + "src": "390:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } } @@ -4598,22 +4596,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } ], - "id": 2203, + "id": 102, "name": "isEmpty", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2194, - "src": "381:7:4", + "referencedDeclaration": 93, + "src": "382:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$returns$_t_bool_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$returns$_t_bool_$", "typeString": "function (struct DLL.Data storage pointer) view returns (bool)" } }, - "id": 2205, + "id": 104, "isConstant": false, "isLValue": false, "isPure": false, @@ -4621,7 +4619,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "381:13:4", + "src": "382:13:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4635,19 +4633,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2208, + "id": 107, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2206, + "id": 105, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2198, - "src": "398:5:4", + "referencedDeclaration": 97, + "src": "399:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4657,50 +4655,50 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2207, + "id": 106, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "407:12:4", + "referencedDeclaration": 69, + "src": "408:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "398:21:4", + "src": "399:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "381:38:4", + "src": "382:38:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 2213, + "id": 112, "nodeType": "IfStatement", - "src": "377:71:4", + "src": "378:71:1", "trueBody": { - "id": 2212, + "id": 111, "nodeType": "Block", - "src": "421:27:4", + "src": "422:27:1", "statements": [ { "expression": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 2210, + "id": 109, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "436:5:4", + "src": "437:5:1", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -4708,26 +4706,26 @@ }, "value": "false" }, - "functionReturnParameters": 2202, - "id": 2211, + "functionReturnParameters": 101, + "id": 110, "nodeType": "Return", - "src": "429:12:4" + "src": "430:12:1" } ] } }, { "assignments": [ - 2215 + 114 ], "declarations": [ { "constant": false, - "id": 2215, + "id": 114, "name": "isSingleNode", "nodeType": "VariableDeclaration", - "scope": 2254, - "src": "455:17:4", + "scope": 153, + "src": "455:17:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4735,10 +4733,10 @@ "typeString": "bool" }, "typeName": { - "id": 2214, + "id": 113, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "455:4:4", + "src": "455:4:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4748,14 +4746,14 @@ "visibility": "internal" } ], - "id": 2229, + "id": 128, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2228, + "id": 127, "isConstant": false, "isLValue": false, "isPure": false, @@ -4769,7 +4767,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2220, + "id": 119, "isConstant": false, "isLValue": false, "isPure": false, @@ -4779,14 +4777,14 @@ "arguments": [ { "argumentTypes": null, - "id": 2217, + "id": 116, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2196, - "src": "485:4:4", + "referencedDeclaration": 95, + "src": "485:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } } @@ -4794,22 +4792,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } ], - "id": 2216, + "id": 115, "name": "getStart", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2299, - "src": "476:8:4", + "referencedDeclaration": 198, + "src": "476:8:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer) view returns (uint256)" } }, - "id": 2218, + "id": 117, "isConstant": false, "isLValue": false, "isPure": false, @@ -4817,7 +4815,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "476:14:4", + "src": "476:14:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4827,32 +4825,32 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2219, + "id": 118, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2198, - "src": "494:5:4", + "referencedDeclaration": 97, + "src": "494:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "476:23:4", + "src": "476:23:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2221, + "id": 120, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "475:25:4", + "src": "475:25:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4869,7 +4867,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2226, + "id": 125, "isConstant": false, "isLValue": false, "isPure": false, @@ -4879,14 +4877,14 @@ "arguments": [ { "argumentTypes": null, - "id": 2223, + "id": 122, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2196, - "src": "512:4:4", + "referencedDeclaration": 95, + "src": "512:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } } @@ -4894,22 +4892,22 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } ], - "id": 2222, + "id": 121, "name": "getEnd", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2312, - "src": "505:6:4", + "referencedDeclaration": 211, + "src": "505:6:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer) view returns (uint256)" } }, - "id": 2224, + "id": 123, "isConstant": false, "isLValue": false, "isPure": false, @@ -4917,7 +4915,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "505:12:4", + "src": "505:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4927,58 +4925,58 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2225, + "id": 124, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2198, - "src": "521:5:4", + "referencedDeclaration": 97, + "src": "521:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "505:21:4", + "src": "505:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2227, + "id": 126, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "504:23:4", + "src": "504:23:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "475:52:4", + "src": "475:52:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "455:72:4" + "src": "455:72:1" }, { "assignments": [ - 2231 + 130 ], "declarations": [ { "constant": false, - "id": 2231, + "id": 130, "name": "isNullNode", "nodeType": "VariableDeclaration", - "scope": 2254, - "src": "533:15:4", + "scope": 153, + "src": "533:15:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4986,10 +4984,10 @@ "typeString": "bool" }, "typeName": { - "id": 2230, + "id": 129, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "533:4:4", + "src": "533:4:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4999,14 +4997,14 @@ "visibility": "internal" } ], - "id": 2247, + "id": 146, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2246, + "id": 145, "isConstant": false, "isLValue": false, "isPure": false, @@ -5020,7 +5018,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2237, + "id": 136, "isConstant": false, "isLValue": false, "isPure": false, @@ -5030,25 +5028,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2233, + "id": 132, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2196, - "src": "560:4:4", + "referencedDeclaration": 95, + "src": "560:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2234, + "id": 133, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2198, - "src": "566:5:4", + "referencedDeclaration": 97, + "src": "566:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5058,7 +5056,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -5066,18 +5064,18 @@ "typeString": "uint256" } ], - "id": 2232, + "id": 131, "name": "getNext", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2270, - "src": "552:7:4", + "referencedDeclaration": 169, + "src": "552:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2235, + "id": 134, "isConstant": false, "isLValue": false, "isPure": false, @@ -5085,7 +5083,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "552:20:4", + "src": "552:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5095,32 +5093,32 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2236, + "id": 135, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "576:12:4", + "referencedDeclaration": 69, + "src": "576:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "552:36:4", + "src": "552:36:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2238, + "id": 137, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "551:38:4", + "src": "551:38:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5137,7 +5135,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2244, + "id": 143, "isConstant": false, "isLValue": false, "isPure": false, @@ -5147,25 +5145,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2240, + "id": 139, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2196, - "src": "602:4:4", + "referencedDeclaration": 95, + "src": "602:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2241, + "id": 140, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2198, - "src": "608:5:4", + "referencedDeclaration": 97, + "src": "608:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5175,7 +5173,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -5183,18 +5181,18 @@ "typeString": "uint256" } ], - "id": 2239, + "id": 138, "name": "getPrev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2286, - "src": "594:7:4", + "referencedDeclaration": 185, + "src": "594:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2242, + "id": 141, "isConstant": false, "isLValue": false, "isPure": false, @@ -5202,7 +5200,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "594:20:4", + "src": "594:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5212,45 +5210,45 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2243, + "id": 142, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "618:12:4", + "referencedDeclaration": 69, + "src": "618:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "594:36:4", + "src": "594:36:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2245, + "id": 144, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "593:38:4", + "src": "593:38:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "551:80:4", + "src": "551:80:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "533:98:4" + "src": "533:98:1" }, { "expression": { @@ -5259,19 +5257,19 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2251, + "id": 150, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2248, + "id": 147, "name": "isSingleNode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2215, - "src": "644:12:4", + "referencedDeclaration": 114, + "src": "644:12:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5281,7 +5279,7 @@ "operator": "||", "rightExpression": { "argumentTypes": null, - "id": 2250, + "id": 149, "isConstant": false, "isLValue": false, "isPure": false, @@ -5289,15 +5287,15 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "660:11:4", + "src": "660:11:1", "subExpression": { "argumentTypes": null, - "id": 2249, + "id": 148, "name": "isNullNode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2231, - "src": "661:10:4", + "referencedDeclaration": 130, + "src": "661:10:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5308,21 +5306,21 @@ "typeString": "bool" } }, - "src": "644:27:4", + "src": "644:27:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 2202, - "id": 2252, + "functionReturnParameters": 101, + "id": 151, "nodeType": "Return", - "src": "637:34:4" + "src": "637:34:1" } ] }, "documentation": null, - "id": 2254, + "id": 153, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5330,31 +5328,31 @@ "name": "contains", "nodeType": "FunctionDefinition", "parameters": { - "id": 2199, + "id": 98, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2196, + "id": 95, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2254, - "src": "313:17:4", + "scope": 153, + "src": "314:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2195, + "id": 94, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "313:4:4", + "referencedDeclaration": 79, + "src": "314:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -5363,11 +5361,11 @@ }, { "constant": false, - "id": 2198, + "id": 97, "name": "_curr", "nodeType": "VariableDeclaration", - "scope": 2254, - "src": "332:10:4", + "scope": 153, + "src": "333:10:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5375,10 +5373,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2197, + "id": 96, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "332:4:4", + "src": "333:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5388,20 +5386,20 @@ "visibility": "internal" } ], - "src": "312:31:4" + "src": "313:31:1" }, "payable": false, "returnParameters": { - "id": 2202, + "id": 101, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2201, + "id": 100, "name": "", "nodeType": "VariableDeclaration", - "scope": 2254, - "src": "365:4:4", + "scope": 153, + "src": "366:4:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5409,10 +5407,10 @@ "typeString": "bool" }, "typeName": { - "id": 2200, + "id": 99, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "365:4:4", + "src": "366:4:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5422,19 +5420,19 @@ "visibility": "internal" } ], - "src": "364:6:4" + "src": "365:6:1" }, - "scope": 2466, - "src": "295:381:4", + "scope": 365, + "src": "296:380:1", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2269, + "id": 168, "nodeType": "Block", - "src": "755:38:4", + "src": "755:38:1", "statements": [ { "expression": { @@ -5445,40 +5443,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2263, + "id": 162, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2256, - "src": "768:4:4", + "referencedDeclaration": 155, + "src": "768:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2264, + "id": 163, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "768:8:4", + "referencedDeclaration": 78, + "src": "768:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2266, + "id": 165, "indexExpression": { "argumentTypes": null, - "id": 2265, + "id": 164, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2258, - "src": "777:5:4", + "referencedDeclaration": 157, + "src": "777:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5489,35 +5487,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "768:15:4", + "src": "768:15:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2267, + "id": 166, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "next", "nodeType": "MemberAccess", - "referencedDeclaration": 2172, - "src": "768:20:4", + "referencedDeclaration": 71, + "src": "768:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2262, - "id": 2268, + "functionReturnParameters": 161, + "id": 167, "nodeType": "Return", - "src": "761:27:4" + "src": "761:27:1" } ] }, "documentation": null, - "id": 2270, + "id": 169, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5525,31 +5523,31 @@ "name": "getNext", "nodeType": "FunctionDefinition", "parameters": { - "id": 2259, + "id": 158, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2256, + "id": 155, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2270, - "src": "697:17:4", + "scope": 169, + "src": "697:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2255, + "id": 154, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "697:4:4", + "referencedDeclaration": 79, + "src": "697:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -5558,11 +5556,11 @@ }, { "constant": false, - "id": 2258, + "id": 157, "name": "_curr", "nodeType": "VariableDeclaration", - "scope": 2270, - "src": "716:10:4", + "scope": 169, + "src": "716:10:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5570,10 +5568,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2257, + "id": 156, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "716:4:4", + "src": "716:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5583,20 +5581,20 @@ "visibility": "internal" } ], - "src": "696:31:4" + "src": "696:31:1" }, "payable": false, "returnParameters": { - "id": 2262, + "id": 161, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2261, + "id": 160, "name": "", "nodeType": "VariableDeclaration", - "scope": 2270, - "src": "749:4:4", + "scope": 169, + "src": "749:4:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5604,10 +5602,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2260, + "id": 159, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "749:4:4", + "src": "749:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5617,19 +5615,19 @@ "visibility": "internal" } ], - "src": "748:6:4" + "src": "748:6:1" }, - "scope": 2466, - "src": "680:113:4", + "scope": 365, + "src": "680:113:1", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2285, + "id": 184, "nodeType": "Block", - "src": "872:38:4", + "src": "872:38:1", "statements": [ { "expression": { @@ -5640,40 +5638,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2279, + "id": 178, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2272, - "src": "885:4:4", + "referencedDeclaration": 171, + "src": "885:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2280, + "id": 179, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "885:8:4", + "referencedDeclaration": 78, + "src": "885:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2282, + "id": 181, "indexExpression": { "argumentTypes": null, - "id": 2281, + "id": 180, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2274, - "src": "894:5:4", + "referencedDeclaration": 173, + "src": "894:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5684,35 +5682,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "885:15:4", + "src": "885:15:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2283, + "id": 182, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "prev", "nodeType": "MemberAccess", - "referencedDeclaration": 2174, - "src": "885:20:4", + "referencedDeclaration": 73, + "src": "885:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2278, - "id": 2284, + "functionReturnParameters": 177, + "id": 183, "nodeType": "Return", - "src": "878:27:4" + "src": "878:27:1" } ] }, "documentation": null, - "id": 2286, + "id": 185, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5720,31 +5718,31 @@ "name": "getPrev", "nodeType": "FunctionDefinition", "parameters": { - "id": 2275, + "id": 174, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2272, + "id": 171, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2286, - "src": "814:17:4", + "scope": 185, + "src": "814:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2271, + "id": 170, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "814:4:4", + "referencedDeclaration": 79, + "src": "814:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -5753,11 +5751,11 @@ }, { "constant": false, - "id": 2274, + "id": 173, "name": "_curr", "nodeType": "VariableDeclaration", - "scope": 2286, - "src": "833:10:4", + "scope": 185, + "src": "833:10:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5765,10 +5763,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2273, + "id": 172, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "833:4:4", + "src": "833:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5778,20 +5776,20 @@ "visibility": "internal" } ], - "src": "813:31:4" + "src": "813:31:1" }, "payable": false, "returnParameters": { - "id": 2278, + "id": 177, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2277, + "id": 176, "name": "", "nodeType": "VariableDeclaration", - "scope": 2286, - "src": "866:4:4", + "scope": 185, + "src": "866:4:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5799,10 +5797,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2276, + "id": 175, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "866:4:4", + "src": "866:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5812,19 +5810,19 @@ "visibility": "internal" } ], - "src": "865:6:4" + "src": "865:6:1" }, - "scope": 2466, - "src": "797:113:4", + "scope": 365, + "src": "797:113:1", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2298, + "id": 197, "nodeType": "Block", - "src": "978:45:4", + "src": "978:45:1", "statements": [ { "expression": { @@ -5832,25 +5830,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2294, + "id": 193, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2288, - "src": "999:4:4", + "referencedDeclaration": 187, + "src": "999:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2295, + "id": 194, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "1005:12:4", + "referencedDeclaration": 69, + "src": "1005:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5860,7 +5858,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -5868,18 +5866,18 @@ "typeString": "uint256" } ], - "id": 2293, + "id": 192, "name": "getNext", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2270, - "src": "991:7:4", + "referencedDeclaration": 169, + "src": "991:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2296, + "id": 195, "isConstant": false, "isLValue": false, "isPure": false, @@ -5887,21 +5885,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "991:27:4", + "src": "991:27:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2292, - "id": 2297, + "functionReturnParameters": 191, + "id": 196, "nodeType": "Return", - "src": "984:34:4" + "src": "984:34:1" } ] }, "documentation": null, - "id": 2299, + "id": 198, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5909,31 +5907,31 @@ "name": "getStart", "nodeType": "FunctionDefinition", "parameters": { - "id": 2289, + "id": 188, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2288, + "id": 187, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2299, - "src": "932:17:4", + "scope": 198, + "src": "932:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2287, + "id": 186, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "932:4:4", + "referencedDeclaration": 79, + "src": "932:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -5941,20 +5939,20 @@ "visibility": "internal" } ], - "src": "931:19:4" + "src": "931:19:1" }, "payable": false, "returnParameters": { - "id": 2292, + "id": 191, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2291, + "id": 190, "name": "", "nodeType": "VariableDeclaration", - "scope": 2299, - "src": "972:4:4", + "scope": 198, + "src": "972:4:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5962,10 +5960,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2290, + "id": 189, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "972:4:4", + "src": "972:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5975,19 +5973,19 @@ "visibility": "internal" } ], - "src": "971:6:4" + "src": "971:6:1" }, - "scope": 2466, - "src": "914:109:4", + "scope": 365, + "src": "914:109:1", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2311, + "id": 210, "nodeType": "Block", - "src": "1089:45:4", + "src": "1089:45:1", "statements": [ { "expression": { @@ -5995,25 +5993,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2307, + "id": 206, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2301, - "src": "1110:4:4", + "referencedDeclaration": 200, + "src": "1110:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2308, + "id": 207, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "1116:12:4", + "referencedDeclaration": 69, + "src": "1116:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6023,7 +6021,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -6031,18 +6029,18 @@ "typeString": "uint256" } ], - "id": 2306, + "id": 205, "name": "getPrev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2286, - "src": "1102:7:4", + "referencedDeclaration": 185, + "src": "1102:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2309, + "id": 208, "isConstant": false, "isLValue": false, "isPure": false, @@ -6050,21 +6048,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1102:27:4", + "src": "1102:27:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 2305, - "id": 2310, + "functionReturnParameters": 204, + "id": 209, "nodeType": "Return", - "src": "1095:34:4" + "src": "1095:34:1" } ] }, "documentation": null, - "id": 2312, + "id": 211, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -6072,31 +6070,31 @@ "name": "getEnd", "nodeType": "FunctionDefinition", "parameters": { - "id": 2302, + "id": 201, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2301, + "id": 200, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2312, - "src": "1043:17:4", + "scope": 211, + "src": "1043:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2300, + "id": 199, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "1043:4:4", + "referencedDeclaration": 79, + "src": "1043:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -6104,20 +6102,20 @@ "visibility": "internal" } ], - "src": "1042:19:4" + "src": "1042:19:1" }, "payable": false, "returnParameters": { - "id": 2305, + "id": 204, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2304, + "id": 203, "name": "", "nodeType": "VariableDeclaration", - "scope": 2312, - "src": "1083:4:4", + "scope": 211, + "src": "1083:4:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6125,10 +6123,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2303, + "id": 202, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1083:4:4", + "src": "1083:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6138,19 +6136,19 @@ "visibility": "internal" } ], - "src": "1082:6:4" + "src": "1082:6:1" }, - "scope": 2466, - "src": "1027:107:4", + "scope": 365, + "src": "1027:107:1", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2410, + "id": 309, "nodeType": "Block", - "src": "1558:417:4", + "src": "1579:417:1", "statements": [ { "expression": { @@ -6162,19 +6160,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2326, + "id": 225, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2324, + "id": 223, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "1572:5:4", + "referencedDeclaration": 217, + "src": "1593:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6184,18 +6182,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 2325, + "id": 224, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "1581:12:4", + "referencedDeclaration": 69, + "src": "1602:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1572:21:4", + "src": "1593:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6209,21 +6207,21 @@ "typeString": "bool" } ], - "id": 2323, + "id": 222, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "1564:7:4", + "referencedDeclaration": 3705, + "src": "1585:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2327, + "id": 226, "isConstant": false, "isLValue": false, "isPure": false, @@ -6231,15 +6229,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1564:30:4", + "src": "1585:30:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2328, + "id": 227, "nodeType": "ExpressionStatement", - "src": "1564:30:4" + "src": "1585:30:1" }, { "expression": { @@ -6247,25 +6245,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2330, + "id": 229, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1608:4:4", + "referencedDeclaration": 213, + "src": "1629:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2331, + "id": 230, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "1614:5:4", + "referencedDeclaration": 217, + "src": "1635:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6275,7 +6273,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -6283,18 +6281,18 @@ "typeString": "uint256" } ], - "id": 2329, + "id": 228, "name": "remove", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2465, - "src": "1601:6:4", + "referencedDeclaration": 364, + "src": "1622:6:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$__$", + "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$__$", "typeString": "function (struct DLL.Data storage pointer,uint256)" } }, - "id": 2332, + "id": 231, "isConstant": false, "isLValue": false, "isPure": false, @@ -6302,15 +6300,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1601:19:4", + "src": "1622:19:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2333, + "id": 232, "nodeType": "ExpressionStatement", - "src": "1601:19:4" + "src": "1622:19:1" }, { "expression": { @@ -6322,7 +6320,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2342, + "id": 241, "isConstant": false, "isLValue": false, "isPure": false, @@ -6333,19 +6331,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2337, + "id": 236, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2335, + "id": 234, "name": "_prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2316, - "src": "1635:5:4", + "referencedDeclaration": 215, + "src": "1656:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6355,18 +6353,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2336, + "id": 235, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "1644:12:4", + "referencedDeclaration": 69, + "src": "1665:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1635:21:4", + "src": "1656:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6379,25 +6377,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2339, + "id": 238, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1669:4:4", + "referencedDeclaration": 213, + "src": "1690:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2340, + "id": 239, "name": "_prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2316, - "src": "1675:5:4", + "referencedDeclaration": 215, + "src": "1696:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6407,7 +6405,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -6415,18 +6413,18 @@ "typeString": "uint256" } ], - "id": 2338, + "id": 237, "name": "contains", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2254, - "src": "1660:8:4", + "referencedDeclaration": 153, + "src": "1681:8:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_bool_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_bool_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (bool)" } }, - "id": 2341, + "id": 240, "isConstant": false, "isLValue": false, "isPure": false, @@ -6434,13 +6432,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1660:21:4", + "src": "1681:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1635:46:4", + "src": "1656:46:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6454,21 +6452,21 @@ "typeString": "bool" } ], - "id": 2334, + "id": 233, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "1627:7:4", + "referencedDeclaration": 3705, + "src": "1648:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2343, + "id": 242, "isConstant": false, "isLValue": false, "isPure": false, @@ -6476,15 +6474,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1627:55:4", + "src": "1648:55:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2344, + "id": 243, "nodeType": "ExpressionStatement", - "src": "1627:55:4" + "src": "1648:55:1" }, { "expression": { @@ -6496,7 +6494,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2353, + "id": 252, "isConstant": false, "isLValue": false, "isPure": false, @@ -6507,19 +6505,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2348, + "id": 247, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2346, + "id": 245, "name": "_next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2320, - "src": "1696:5:4", + "referencedDeclaration": 219, + "src": "1717:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6529,18 +6527,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2347, + "id": 246, "name": "NULL_NODE_ID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2170, - "src": "1705:12:4", + "referencedDeclaration": 69, + "src": "1726:12:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1696:21:4", + "src": "1717:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6553,25 +6551,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2350, + "id": 249, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1730:4:4", + "referencedDeclaration": 213, + "src": "1751:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2351, + "id": 250, "name": "_next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2320, - "src": "1736:5:4", + "referencedDeclaration": 219, + "src": "1757:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6581,7 +6579,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -6589,18 +6587,18 @@ "typeString": "uint256" } ], - "id": 2349, + "id": 248, "name": "contains", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2254, - "src": "1721:8:4", + "referencedDeclaration": 153, + "src": "1742:8:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_bool_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_bool_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (bool)" } }, - "id": 2352, + "id": 251, "isConstant": false, "isLValue": false, "isPure": false, @@ -6608,13 +6606,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1721:21:4", + "src": "1742:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "1696:46:4", + "src": "1717:46:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6628,21 +6626,21 @@ "typeString": "bool" } ], - "id": 2345, + "id": 244, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "1688:7:4", + "referencedDeclaration": 3705, + "src": "1709:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2354, + "id": 253, "isConstant": false, "isLValue": false, "isPure": false, @@ -6650,15 +6648,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1688:55:4", + "src": "1709:55:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2355, + "id": 254, "nodeType": "ExpressionStatement", - "src": "1688:55:4" + "src": "1709:55:1" }, { "expression": { @@ -6670,7 +6668,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2362, + "id": 261, "isConstant": false, "isLValue": false, "isPure": false, @@ -6680,25 +6678,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2358, + "id": 257, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1766:4:4", + "referencedDeclaration": 213, + "src": "1787:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2359, + "id": 258, "name": "_prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2316, - "src": "1772:5:4", + "referencedDeclaration": 215, + "src": "1793:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6708,7 +6706,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -6716,18 +6714,18 @@ "typeString": "uint256" } ], - "id": 2357, + "id": 256, "name": "getNext", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2270, - "src": "1758:7:4", + "referencedDeclaration": 169, + "src": "1779:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2360, + "id": 259, "isConstant": false, "isLValue": false, "isPure": false, @@ -6735,7 +6733,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1758:20:4", + "src": "1779:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6745,18 +6743,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2361, + "id": 260, "name": "_next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2320, - "src": "1782:5:4", + "referencedDeclaration": 219, + "src": "1803:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1758:29:4", + "src": "1779:29:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6770,21 +6768,21 @@ "typeString": "bool" } ], - "id": 2356, + "id": 255, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "1750:7:4", + "referencedDeclaration": 3705, + "src": "1771:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2363, + "id": 262, "isConstant": false, "isLValue": false, "isPure": false, @@ -6792,15 +6790,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1750:38:4", + "src": "1771:38:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2364, + "id": 263, "nodeType": "ExpressionStatement", - "src": "1750:38:4" + "src": "1771:38:1" }, { "expression": { @@ -6812,7 +6810,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2371, + "id": 270, "isConstant": false, "isLValue": false, "isPure": false, @@ -6822,25 +6820,25 @@ "arguments": [ { "argumentTypes": null, - "id": 2367, + "id": 266, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1810:4:4", + "referencedDeclaration": 213, + "src": "1831:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2368, + "id": 267, "name": "_next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2320, - "src": "1816:5:4", + "referencedDeclaration": 219, + "src": "1837:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6850,7 +6848,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -6858,18 +6856,18 @@ "typeString": "uint256" } ], - "id": 2366, + "id": 265, "name": "getPrev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2286, - "src": "1802:7:4", + "referencedDeclaration": 185, + "src": "1823:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2369, + "id": 268, "isConstant": false, "isLValue": false, "isPure": false, @@ -6877,7 +6875,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1802:20:4", + "src": "1823:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6887,18 +6885,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2370, + "id": 269, "name": "_prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2316, - "src": "1826:5:4", + "referencedDeclaration": 215, + "src": "1847:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1802:29:4", + "src": "1823:29:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6912,21 +6910,21 @@ "typeString": "bool" } ], - "id": 2365, + "id": 264, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "1794:7:4", + "referencedDeclaration": 3705, + "src": "1815:7:1", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2372, + "id": 271, "isConstant": false, "isLValue": false, "isPure": false, @@ -6934,20 +6932,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "1794:38:4", + "src": "1815:38:1", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2373, + "id": 272, "nodeType": "ExpressionStatement", - "src": "1794:38:4" + "src": "1815:38:1" }, { "expression": { "argumentTypes": null, - "id": 2381, + "id": 280, "isConstant": false, "isLValue": false, "isPure": false, @@ -6960,40 +6958,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2374, + "id": 273, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1839:4:4", + "referencedDeclaration": 213, + "src": "1860:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2377, + "id": 276, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "1839:8:4", + "referencedDeclaration": 78, + "src": "1860:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2378, + "id": 277, "indexExpression": { "argumentTypes": null, - "id": 2376, + "id": 275, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "1848:5:4", + "referencedDeclaration": 217, + "src": "1869:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7004,21 +7002,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1839:15:4", + "src": "1860:15:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2379, + "id": 278, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "prev", "nodeType": "MemberAccess", - "referencedDeclaration": 2174, - "src": "1839:20:4", + "referencedDeclaration": 73, + "src": "1860:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7028,31 +7026,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2380, + "id": 279, "name": "_prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2316, - "src": "1862:5:4", + "referencedDeclaration": 215, + "src": "1883:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1839:28:4", + "src": "1860:28:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2382, + "id": 281, "nodeType": "ExpressionStatement", - "src": "1839:28:4" + "src": "1860:28:1" }, { "expression": { "argumentTypes": null, - "id": 2390, + "id": 289, "isConstant": false, "isLValue": false, "isPure": false, @@ -7065,40 +7063,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2383, + "id": 282, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1873:4:4", + "referencedDeclaration": 213, + "src": "1894:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2386, + "id": 285, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "1873:8:4", + "referencedDeclaration": 78, + "src": "1894:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2387, + "id": 286, "indexExpression": { "argumentTypes": null, - "id": 2385, + "id": 284, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "1882:5:4", + "referencedDeclaration": 217, + "src": "1903:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7109,21 +7107,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1873:15:4", + "src": "1894:15:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2388, + "id": 287, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "next", "nodeType": "MemberAccess", - "referencedDeclaration": 2172, - "src": "1873:20:4", + "referencedDeclaration": 71, + "src": "1894:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7133,31 +7131,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2389, + "id": 288, "name": "_next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2320, - "src": "1896:5:4", + "referencedDeclaration": 219, + "src": "1917:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1873:28:4", + "src": "1894:28:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2391, + "id": 290, "nodeType": "ExpressionStatement", - "src": "1873:28:4" + "src": "1894:28:1" }, { "expression": { "argumentTypes": null, - "id": 2399, + "id": 298, "isConstant": false, "isLValue": false, "isPure": false, @@ -7170,40 +7168,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2392, + "id": 291, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1908:4:4", + "referencedDeclaration": 213, + "src": "1929:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2395, + "id": 294, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "1908:8:4", + "referencedDeclaration": 78, + "src": "1929:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2396, + "id": 295, "indexExpression": { "argumentTypes": null, - "id": 2394, + "id": 293, "name": "_prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2316, - "src": "1917:5:4", + "referencedDeclaration": 215, + "src": "1938:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7214,21 +7212,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1908:15:4", + "src": "1929:15:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2397, + "id": 296, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "next", "nodeType": "MemberAccess", - "referencedDeclaration": 2172, - "src": "1908:20:4", + "referencedDeclaration": 71, + "src": "1929:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7238,31 +7236,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2398, + "id": 297, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "1931:5:4", + "referencedDeclaration": 217, + "src": "1952:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1908:28:4", + "src": "1929:28:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2400, + "id": 299, "nodeType": "ExpressionStatement", - "src": "1908:28:4" + "src": "1929:28:1" }, { "expression": { "argumentTypes": null, - "id": 2408, + "id": 307, "isConstant": false, "isLValue": false, "isPure": false, @@ -7275,40 +7273,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2401, + "id": 300, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2314, - "src": "1942:4:4", + "referencedDeclaration": 213, + "src": "1963:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2404, + "id": 303, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "1942:8:4", + "referencedDeclaration": 78, + "src": "1963:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2405, + "id": 304, "indexExpression": { "argumentTypes": null, - "id": 2403, + "id": 302, "name": "_next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2320, - "src": "1951:5:4", + "referencedDeclaration": 219, + "src": "1972:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7319,21 +7317,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "1942:15:4", + "src": "1963:15:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2406, + "id": 305, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "prev", "nodeType": "MemberAccess", - "referencedDeclaration": 2174, - "src": "1942:20:4", + "referencedDeclaration": 73, + "src": "1963:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7343,31 +7341,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2407, + "id": 306, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2318, - "src": "1965:5:4", + "referencedDeclaration": 217, + "src": "1986:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "1942:28:4", + "src": "1963:28:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2409, + "id": 308, "nodeType": "ExpressionStatement", - "src": "1942:28:4" + "src": "1963:28:1" } ] }, - "documentation": "@dev Inserts a new node between _prev and _next. When inserting a node already existing in \nthe list it will be automatically removed from the old position.\n@param _prev the node which _new will be inserted after\n@param _curr the id of the new node being inserted\n@param _next the node which _new will be inserted before", - "id": 2411, + "documentation": "@dev Inserts a new node between _prev and _next. When inserting a node already existing in\nthe list it will be automatically removed from the old position.\n@param _prev the node which _new will be inserted after\n@param _curr the id of the new node being inserted\n@param _next the node which _new will be inserted before", + "id": 310, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -7375,31 +7373,31 @@ "name": "insert", "nodeType": "FunctionDefinition", "parameters": { - "id": 2321, + "id": 220, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2314, + "id": 213, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2411, - "src": "1496:17:4", + "scope": 310, + "src": "1500:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2313, + "id": 212, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "1496:4:4", + "referencedDeclaration": 79, + "src": "1500:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -7408,11 +7406,11 @@ }, { "constant": false, - "id": 2316, + "id": 215, "name": "_prev", "nodeType": "VariableDeclaration", - "scope": 2411, - "src": "1515:10:4", + "scope": 310, + "src": "1523:10:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7420,10 +7418,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2315, + "id": 214, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1515:4:4", + "src": "1523:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7434,11 +7432,11 @@ }, { "constant": false, - "id": 2318, + "id": 217, "name": "_curr", "nodeType": "VariableDeclaration", - "scope": 2411, - "src": "1527:10:4", + "scope": 310, + "src": "1539:10:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7446,10 +7444,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2317, + "id": 216, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1527:4:4", + "src": "1539:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7460,11 +7458,11 @@ }, { "constant": false, - "id": 2320, + "id": 219, "name": "_next", "nodeType": "VariableDeclaration", - "scope": 2411, - "src": "1539:10:4", + "scope": 310, + "src": "1555:10:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7472,10 +7470,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2319, + "id": 218, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1539:4:4", + "src": "1555:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7485,31 +7483,31 @@ "visibility": "internal" } ], - "src": "1495:55:4" + "src": "1494:75:1" }, "payable": false, "returnParameters": { - "id": 2322, + "id": 221, "nodeType": "ParameterList", "parameters": [], - "src": "1558:0:4" + "src": "1579:0:1" }, - "scope": 2466, - "src": "1480:495:4", + "scope": 365, + "src": "1479:517:1", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2464, + "id": 363, "nodeType": "Block", - "src": "2033:230:4", + "src": "2054:230:1", "statements": [ { "condition": { "argumentTypes": null, - "id": 2422, + "id": 321, "isConstant": false, "isLValue": false, "isPure": false, @@ -7517,31 +7515,31 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2043:22:4", + "src": "2064:22:1", "subExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2419, + "id": 318, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, - "src": "2053:4:4", + "referencedDeclaration": 312, + "src": "2074:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2420, + "id": 319, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2415, - "src": "2059:5:4", + "referencedDeclaration": 314, + "src": "2080:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7551,7 +7549,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -7559,18 +7557,18 @@ "typeString": "uint256" } ], - "id": 2418, + "id": 317, "name": "contains", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2254, - "src": "2044:8:4", + "referencedDeclaration": 153, + "src": "2065:8:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_bool_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_bool_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (bool)" } }, - "id": 2421, + "id": 320, "isConstant": false, "isLValue": false, "isPure": false, @@ -7578,7 +7576,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2044:21:4", + "src": "2065:21:1", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7590,36 +7588,36 @@ } }, "falseBody": null, - "id": 2425, + "id": 324, "nodeType": "IfStatement", - "src": "2039:49:4", + "src": "2060:49:1", "trueBody": { - "id": 2424, + "id": 323, "nodeType": "Block", - "src": "2067:21:4", + "src": "2088:21:1", "statements": [ { "expression": null, - "functionReturnParameters": 2417, - "id": 2423, + "functionReturnParameters": 316, + "id": 322, "nodeType": "Return", - "src": "2075:7:4" + "src": "2096:7:1" } ] } }, { "assignments": [ - 2427 + 326 ], "declarations": [ { "constant": false, - "id": 2427, + "id": 326, "name": "next", "nodeType": "VariableDeclaration", - "scope": 2465, - "src": "2094:9:4", + "scope": 364, + "src": "2115:9:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7627,10 +7625,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2426, + "id": 325, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2094:4:4", + "src": "2115:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7640,31 +7638,31 @@ "visibility": "internal" } ], - "id": 2432, + "id": 331, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2429, + "id": 328, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, - "src": "2114:4:4", + "referencedDeclaration": 312, + "src": "2135:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2430, + "id": 329, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2415, - "src": "2120:5:4", + "referencedDeclaration": 314, + "src": "2141:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7674,7 +7672,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -7682,18 +7680,18 @@ "typeString": "uint256" } ], - "id": 2428, + "id": 327, "name": "getNext", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2270, - "src": "2106:7:4", + "referencedDeclaration": 169, + "src": "2127:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2431, + "id": 330, "isConstant": false, "isLValue": false, "isPure": false, @@ -7701,27 +7699,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2106:20:4", + "src": "2127:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "2094:32:4" + "src": "2115:32:1" }, { "assignments": [ - 2434 + 333 ], "declarations": [ { "constant": false, - "id": 2434, + "id": 333, "name": "prev", "nodeType": "VariableDeclaration", - "scope": 2465, - "src": "2132:9:4", + "scope": 364, + "src": "2153:9:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7729,10 +7727,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2433, + "id": 332, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2132:4:4", + "src": "2153:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7742,31 +7740,31 @@ "visibility": "internal" } ], - "id": 2439, + "id": 338, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2436, + "id": 335, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, - "src": "2152:4:4", + "referencedDeclaration": 312, + "src": "2173:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, { "argumentTypes": null, - "id": 2437, + "id": 336, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2415, - "src": "2158:5:4", + "referencedDeclaration": 314, + "src": "2179:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7776,7 +7774,7 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" }, { @@ -7784,18 +7782,18 @@ "typeString": "uint256" } ], - "id": 2435, + "id": 334, "name": "getPrev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2286, - "src": "2144:7:4", + "referencedDeclaration": 185, + "src": "2165:7:1", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$", + "typeIdentifier": "t_function_internal_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2438, + "id": 337, "isConstant": false, "isLValue": false, "isPure": false, @@ -7803,19 +7801,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2144:20:4", + "src": "2165:20:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "2132:32:4" + "src": "2153:32:1" }, { "expression": { "argumentTypes": null, - "id": 2447, + "id": 346, "isConstant": false, "isLValue": false, "isPure": false, @@ -7828,40 +7826,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2440, + "id": 339, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, - "src": "2171:4:4", + "referencedDeclaration": 312, + "src": "2192:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2443, + "id": 342, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "2171:8:4", + "referencedDeclaration": 78, + "src": "2192:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2444, + "id": 343, "indexExpression": { "argumentTypes": null, - "id": 2442, + "id": 341, "name": "next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2427, - "src": "2180:4:4", + "referencedDeclaration": 326, + "src": "2201:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7872,21 +7870,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2171:14:4", + "src": "2192:14:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2445, + "id": 344, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "prev", "nodeType": "MemberAccess", - "referencedDeclaration": 2174, - "src": "2171:19:4", + "referencedDeclaration": 73, + "src": "2192:19:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7896,31 +7894,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2446, + "id": 345, "name": "prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2434, - "src": "2193:4:4", + "referencedDeclaration": 333, + "src": "2214:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2171:26:4", + "src": "2192:26:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2448, + "id": 347, "nodeType": "ExpressionStatement", - "src": "2171:26:4" + "src": "2192:26:1" }, { "expression": { "argumentTypes": null, - "id": 2456, + "id": 355, "isConstant": false, "isLValue": false, "isPure": false, @@ -7933,40 +7931,40 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2449, + "id": 348, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, - "src": "2203:4:4", + "referencedDeclaration": 312, + "src": "2224:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2452, + "id": 351, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "2203:8:4", + "referencedDeclaration": 78, + "src": "2224:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2453, + "id": 352, "indexExpression": { "argumentTypes": null, - "id": 2451, + "id": 350, "name": "prev", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2434, - "src": "2212:4:4", + "referencedDeclaration": 333, + "src": "2233:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7977,21 +7975,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "2203:14:4", + "src": "2224:14:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, - "id": 2454, + "id": 353, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "next", "nodeType": "MemberAccess", - "referencedDeclaration": 2172, - "src": "2203:19:4", + "referencedDeclaration": 71, + "src": "2224:19:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8001,31 +7999,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2455, + "id": 354, "name": "next", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2427, - "src": "2225:4:4", + "referencedDeclaration": 326, + "src": "2246:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2203:26:4", + "src": "2224:26:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2457, + "id": 356, "nodeType": "ExpressionStatement", - "src": "2203:26:4" + "src": "2224:26:1" }, { "expression": { "argumentTypes": null, - "id": 2462, + "id": 361, "isConstant": false, "isLValue": false, "isPure": false, @@ -8033,47 +8031,47 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "2236:22:4", + "src": "2257:22:1", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2458, + "id": 357, "name": "self", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2413, - "src": "2243:4:4", + "referencedDeclaration": 312, + "src": "2264:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data storage pointer" } }, - "id": 2459, + "id": 358, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "dll", "nodeType": "MemberAccess", - "referencedDeclaration": 2179, - "src": "2243:8:4", + "referencedDeclaration": 78, + "src": "2264:8:1", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$2175_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Node_$74_storage_$", "typeString": "mapping(uint256 => struct DLL.Node storage ref)" } }, - "id": 2461, + "id": 360, "indexExpression": { "argumentTypes": null, - "id": 2460, + "id": 359, "name": "_curr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2415, - "src": "2252:5:4", + "referencedDeclaration": 314, + "src": "2273:5:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8084,9 +8082,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2243:15:4", + "src": "2264:15:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Node_$2175_storage", + "typeIdentifier": "t_struct$_Node_$74_storage", "typeString": "struct DLL.Node storage ref" } }, @@ -8095,14 +8093,14 @@ "typeString": "tuple()" } }, - "id": 2463, + "id": 362, "nodeType": "ExpressionStatement", - "src": "2236:22:4" + "src": "2257:22:1" } ] }, "documentation": null, - "id": 2465, + "id": 364, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -8110,31 +8108,31 @@ "name": "remove", "nodeType": "FunctionDefinition", "parameters": { - "id": 2416, + "id": 315, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2413, + "id": 312, "name": "self", "nodeType": "VariableDeclaration", - "scope": 2465, - "src": "1995:17:4", + "scope": 364, + "src": "2016:17:1", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" }, "typeName": { "contractScope": null, - "id": 2412, + "id": 311, "name": "Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "1995:4:4", + "referencedDeclaration": 79, + "src": "2016:4:1", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } }, @@ -8143,11 +8141,11 @@ }, { "constant": false, - "id": 2415, + "id": 314, "name": "_curr", "nodeType": "VariableDeclaration", - "scope": 2465, - "src": "2014:10:4", + "scope": 364, + "src": "2035:10:1", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8155,10 +8153,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2414, + "id": 313, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2014:4:4", + "src": "2035:4:1", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8168,27 +8166,27 @@ "visibility": "internal" } ], - "src": "1994:31:4" + "src": "2015:31:1" }, "payable": false, "returnParameters": { - "id": 2417, + "id": 316, "nodeType": "ParameterList", "parameters": [], - "src": "2033:0:4" + "src": "2054:0:1" }, - "scope": 2466, - "src": "1979:284:4", + "scope": 365, + "src": "2000:284:1", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" } ], - "scope": 2467, - "src": "25:2240:4" + "scope": 366, + "src": "26:2260:1" } ], - "src": "0:2266:4" + "src": "0:2287:1" }, "compiler": { "name": "solc", @@ -8196,5 +8194,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-06-20T22:39:18.101Z" + "updatedAt": "2018-06-21T22:48:42.348Z" } \ No newline at end of file diff --git a/build/contracts/EIP20.json b/build/contracts/EIP20.json deleted file mode 100644 index 7f53ec1..0000000 --- a/build/contracts/EIP20.json +++ /dev/null @@ -1,6020 +0,0 @@ -{ - "contractName": "EIP20", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "name", - "outputs": [ - { - "name": "", - "type": "string" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "decimals", - "outputs": [ - { - "name": "", - "type": "uint8" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": true, - "inputs": [], - "name": "symbol", - "outputs": [ - { - "name": "", - "type": "string" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "name": "_initialAmount", - "type": "uint256" - }, - { - "name": "_tokenName", - "type": "string" - }, - { - "name": "_decimalUnits", - "type": "uint8" - }, - { - "name": "_tokenSymbol", - "type": "string" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "_from", - "type": "address" - }, - { - "indexed": true, - "name": "_to", - "type": "address" - }, - { - "indexed": false, - "name": "_value", - "type": "uint256" - } - ], - "name": "Transfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "_owner", - "type": "address" - }, - { - "indexed": true, - "name": "_spender", - "type": "address" - }, - { - "indexed": false, - "name": "_value", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" - }, - { - "constant": false, - "inputs": [ - { - "name": "_to", - "type": "address" - }, - { - "name": "_value", - "type": "uint256" - } - ], - "name": "transfer", - "outputs": [ - { - "name": "success", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_from", - "type": "address" - }, - { - "name": "_to", - "type": "address" - }, - { - "name": "_value", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "name": "success", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_owner", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "name": "balance", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_spender", - "type": "address" - }, - { - "name": "_value", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "name": "success", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_owner", - "type": "address" - }, - { - "name": "_spender", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "name": "remaining", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - } - ], - "bytecode": "0x608060405234801561001057600080fd5b50604051610d0f380380610d0f8339810180604052810190808051906020019092919080518201929190602001805190602001909291908051820192919050505083600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508360008190555082600190805190602001906100b29291906100ee565b5081600260006101000a81548160ff021916908360ff16021790555080600390805190602001906100e49291906100ee565b5050505050610193565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061012f57805160ff191683800117855561015d565b8280016001018555821561015d579182015b8281111561015c578251825591602001919060010190610141565b5b50905061016a919061016e565b5090565b61019091905b8082111561018c576000816000905550600101610174565b5090565b90565b610b6d806101a26000396000f300608060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461009e578063095ea7b31461012e57806318160ddd1461019357806323b872dd146101be578063313ce5671461024357806370a082311461027457806395d89b41146102cb578063a9059cbb1461035b578063dd62ed3e146103c0575b600080fd5b3480156100aa57600080fd5b506100b3610437565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100f35780820151818401526020810190506100d8565b50505050905090810190601f1680156101205780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561013a57600080fd5b50610179600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506104d5565b604051808215151515815260200191505060405180910390f35b34801561019f57600080fd5b506101a86105c7565b6040518082815260200191505060405180910390f35b3480156101ca57600080fd5b50610229600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506105cd565b604051808215151515815260200191505060405180910390f35b34801561024f57600080fd5b50610258610867565b604051808260ff1660ff16815260200191505060405180910390f35b34801561028057600080fd5b506102b5600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061087a565b6040518082815260200191505060405180910390f35b3480156102d757600080fd5b506102e06108c3565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610320578082015181840152602081019050610305565b50505050905090810190601f16801561034d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561036757600080fd5b506103a6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610961565b604051808215151515815260200191505060405180910390f35b3480156103cc57600080fd5b50610421600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610aba565b6040518082815260200191505060405180910390f35b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104cd5780601f106104a2576101008083540402835291602001916104cd565b820191906000526020600020905b8154815290600101906020018083116104b057829003601f168201915b505050505081565b600081600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015801561069e5750828110155b15156106a957600080fd5b82600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555082600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8110156107f65782600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b600260009054906101000a900460ff1681565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109595780601f1061092e57610100808354040283529160200191610959565b820191906000526020600020905b81548152906001019060200180831161093c57829003601f168201915b505050505081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156109b157600080fd5b81600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050929150505600a165627a7a72305820d19770f578ba5785f85dac82ebd68fefc5a8debe253116fe16fc8630a100cba40029", - "deployedBytecode": "0x608060405260043610610099576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde031461009e578063095ea7b31461012e57806318160ddd1461019357806323b872dd146101be578063313ce5671461024357806370a082311461027457806395d89b41146102cb578063a9059cbb1461035b578063dd62ed3e146103c0575b600080fd5b3480156100aa57600080fd5b506100b3610437565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156100f35780820151818401526020810190506100d8565b50505050905090810190601f1680156101205780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561013a57600080fd5b50610179600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506104d5565b604051808215151515815260200191505060405180910390f35b34801561019f57600080fd5b506101a86105c7565b6040518082815260200191505060405180910390f35b3480156101ca57600080fd5b50610229600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506105cd565b604051808215151515815260200191505060405180910390f35b34801561024f57600080fd5b50610258610867565b604051808260ff1660ff16815260200191505060405180910390f35b34801561028057600080fd5b506102b5600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061087a565b6040518082815260200191505060405180910390f35b3480156102d757600080fd5b506102e06108c3565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610320578082015181840152602081019050610305565b50505050905090810190601f16801561034d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561036757600080fd5b506103a6600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610961565b604051808215151515815260200191505060405180910390f35b3480156103cc57600080fd5b50610421600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610aba565b6040518082815260200191505060405180910390f35b60018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156104cd5780601f106104a2576101008083540402835291602001916104cd565b820191906000526020600020905b8154815290600101906020018083116104b057829003601f168201915b505050505081565b600081600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60005481565b600080600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015801561069e5750828110155b15156106a957600080fd5b82600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254019250508190555082600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8110156107f65782600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825403925050819055505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b600260009054906101000a900460ff1681565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156109595780601f1061092e57610100808354040283529160200191610959565b820191906000526020600020905b81548152906001019060200180831161093c57829003601f168201915b505050505081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101515156109b157600080fd5b81600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254039250508190555081600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050929150505600a165627a7a72305820d19770f578ba5785f85dac82ebd68fefc5a8debe253116fe16fc8630a100cba40029", - "sourceMap": "140:3125:6:-;;;725:642;8:9:-1;5:2;;;30:1;27;20:12;5:2;725:642:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;907:14;884:8;:20;893:10;884:20;;;;;;;;;;;;;;;:37;;;;998:14;984:11;:28;;;;1075:10;1068:4;:17;;;;;;;;;;;;:::i;:::-;;1177:13;1166:8;;:24;;;;;;;;;;;;;;;;;;1279:12;1270:6;:21;;;;;;;;;;;;:::i;:::-;;725:642;;;;140:3125;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;", - "deployedSourceMap": "140:3125:6:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;515:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;515:18:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;515:18:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2801:205;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2801:205:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;618:26:7;;8:9:-1;5:2;;;30:1;27;20:12;5:2;618:26:7;;;;;;;;;;;;;;;;;;;;;;;1987:689:6;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1987:689:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;586:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;586:21:6;;;;;;;;;;;;;;;;;;;;;;;;;;;2682:113;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2682:113:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;657:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;657:20:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;657:20:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1373:608;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1373:608:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3012:144;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3012:144:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;515:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2801:205::-;2868:12;2924:6;2892:7;:19;2900:10;2892:19;;;;;;;;;;;;;;;:29;2912:8;2892:29;;;;;;;;;;;;;;;:38;;;;2961:8;2940:38;;2949:10;2940:38;;;2971:6;2940:38;;;;;;;;;;;;;;;;;;2995:4;2988:11;;2801:205;;;;:::o;618:26:7:-;;;;:::o;1987:689:6:-;2069:12;2330:17;2350:7;:14;2358:5;2350:14;;;;;;;;;;;;;;;:26;2365:10;2350:26;;;;;;;;;;;;;;;;2330:46;;2413:6;2394:8;:15;2403:5;2394:15;;;;;;;;;;;;;;;;:25;;:48;;;;;2436:6;2423:9;:19;;2394:48;2386:57;;;;;;;;2470:6;2453:8;:13;2462:3;2453:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;2505:6;2486:8;:15;2495:5;2486:15;;;;;;;;;;;;;;;;:25;;;;;;;;;;;211:10;2525:9;:23;2521:90;;;2594:6;2564:7;:14;2572:5;2564:14;;;;;;;;;;;;;;;:26;2579:10;2564:26;;;;;;;;;;;;;;;;:36;;;;;;;;;;;2521:90;2636:3;2620:28;;2629:5;2620:28;;;2641:6;2620:28;;;;;;;;;;;;;;;;;;2665:4;2658:11;;1987:689;;;;;;:::o;586:21::-;;;;;;;;;;;;;:::o;2682:113::-;2738:15;2772:8;:16;2781:6;2772:16;;;;;;;;;;;;;;;;2765:23;;2682:113;;;:::o;657:20::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1373:608::-;1436:12;1830:6;1806:8;:20;1815:10;1806:20;;;;;;;;;;;;;;;;:30;;1798:39;;;;;;;;1871:6;1847:8;:20;1856:10;1847:20;;;;;;;;;;;;;;;;:30;;;;;;;;;;;1904:6;1887:8;:13;1896:3;1887:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;1941:3;1920:33;;1929:10;1920:33;;;1946:6;1920:33;;;;;;;;;;;;;;;;;;1970:4;1963:11;;1373:608;;;;:::o;3012:144::-;3090:17;3124:7;:15;3132:6;3124:15;;;;;;;;;;;;;;;:25;3140:8;3124:25;;;;;;;;;;;;;;;;3117:32;;3012:144;;;;:::o", - "source": "/*\nImplements EIP20 token standard: https://github.com/ethereum/EIPs/issues/20\n.*/\npragma solidity ^0.4.8;\n\nimport \"./EIP20Interface.sol\";\n\ncontract EIP20 is EIP20Interface {\n\n uint256 constant MAX_UINT256 = 2**256 - 1;\n\n /*\n NOTE:\n The following variables are OPTIONAL vanities. One does not have to include them.\n They allow one to customise the token contract & in no way influences the core functionality.\n Some wallets/interfaces might not even bother to look at this information.\n */\n string public name; //fancy name: eg Simon Bucks\n uint8 public decimals; //How many decimals to show.\n string public symbol; //An identifier: eg SBX\n\n function EIP20(\n uint256 _initialAmount,\n string _tokenName,\n uint8 _decimalUnits,\n string _tokenSymbol\n ) public {\n balances[msg.sender] = _initialAmount; // Give the creator all initial tokens\n totalSupply = _initialAmount; // Update total supply\n name = _tokenName; // Set the name for display purposes\n decimals = _decimalUnits; // Amount of decimals for display purposes\n symbol = _tokenSymbol; // Set the symbol for display purposes\n }\n\n function transfer(address _to, uint256 _value) public returns (bool success) {\n //Default assumes totalSupply can't be over max (2^256 - 1).\n //If your token leaves out totalSupply and can issue more tokens as time goes on, you need to check if it doesn't wrap.\n //Replace the if with this one instead.\n //require(balances[msg.sender] >= _value && balances[_to] + _value > balances[_to]);\n require(balances[msg.sender] >= _value);\n balances[msg.sender] -= _value;\n balances[_to] += _value;\n Transfer(msg.sender, _to, _value);\n return true;\n }\n\n function transferFrom(address _from, address _to, uint256 _value) public returns (bool success) {\n //same as above. Replace this line with the following if you want to protect against wrapping uints.\n //require(balances[_from] >= _value && allowed[_from][msg.sender] >= _value && balances[_to] + _value > balances[_to]);\n uint256 allowance = allowed[_from][msg.sender];\n require(balances[_from] >= _value && allowance >= _value);\n balances[_to] += _value;\n balances[_from] -= _value;\n if (allowance < MAX_UINT256) {\n allowed[_from][msg.sender] -= _value;\n }\n Transfer(_from, _to, _value);\n return true;\n }\n\n function balanceOf(address _owner) view public returns (uint256 balance) {\n return balances[_owner];\n }\n\n function approve(address _spender, uint256 _value) public returns (bool success) {\n allowed[msg.sender][_spender] = _value;\n Approval(msg.sender, _spender, _value);\n return true;\n }\n\n function allowance(address _owner, address _spender)\n view public returns (uint256 remaining) {\n return allowed[_owner][_spender];\n }\n\n mapping (address => uint256) balances;\n mapping (address => mapping (address => uint256)) allowed;\n}\n", - "sourcePath": "tokens/eip20/EIP20.sol", - "ast": { - "absolutePath": "tokens/eip20/EIP20.sol", - "exportedSymbols": { - "EIP20": [ - 3716 - ] - }, - "id": 3717, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 3490, - "literals": [ - "solidity", - "^", - "0.4", - ".8" - ], - "nodeType": "PragmaDirective", - "src": "83:23:6" - }, - { - "absolutePath": "tokens/eip20/EIP20Interface.sol", - "file": "./EIP20Interface.sol", - "id": 3491, - "nodeType": "ImportDirective", - "scope": 3717, - "sourceUnit": 3783, - "src": "108:30:6", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 3492, - "name": "EIP20Interface", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3782, - "src": "158:14:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" - } - }, - "id": 3493, - "nodeType": "InheritanceSpecifier", - "src": "158:14:6" - } - ], - "contractDependencies": [ - 3782 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 3716, - "linearizedBaseContracts": [ - 3716, - 3782 - ], - "name": "EIP20", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": true, - "id": 3500, - "name": "MAX_UINT256", - "nodeType": "VariableDeclaration", - "scope": 3716, - "src": "180:41:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3494, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "180:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", - "typeString": "int_const 1157...(70 digits omitted)...9935" - }, - "id": 3499, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639936_by_1", - "typeString": "int_const 1157...(70 digits omitted)...9936" - }, - "id": 3497, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "hexValue": "32", - "id": 3495, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "211:1:6", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "**", - "rightExpression": { - "argumentTypes": null, - "hexValue": "323536", - "id": 3496, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "214:3:6", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_256_by_1", - "typeString": "int_const 256" - }, - "value": "256" - }, - "src": "211:6:6", - "typeDescriptions": { - "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639936_by_1", - "typeString": "int_const 1157...(70 digits omitted)...9936" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "argumentTypes": null, - "hexValue": "31", - "id": 3498, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "220:1:6", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "211:10:6", - "typeDescriptions": { - "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", - "typeString": "int_const 1157...(70 digits omitted)...9935" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3502, - "name": "name", - "nodeType": "VariableDeclaration", - "scope": 3716, - "src": "515:18:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 3501, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "515:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 3504, - "name": "decimals", - "nodeType": "VariableDeclaration", - "scope": 3716, - "src": "586:21:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 3503, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "586:5:6", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 3506, - "name": "symbol", - "nodeType": "VariableDeclaration", - "scope": 3716, - "src": "657:20:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 3505, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "657:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "public" - }, - { - "body": { - "id": 3540, - "nodeType": "Block", - "src": "874:493:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 3522, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3517, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "884:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3520, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3518, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "893:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3519, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "893:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "884:20:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 3521, - "name": "_initialAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3508, - "src": "907:14:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "884:37:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3523, - "nodeType": "ExpressionStatement", - "src": "884:37:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3526, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 3524, - "name": "totalSupply", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3720, - "src": "984:11:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 3525, - "name": "_initialAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3508, - "src": "998:14:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "984:28:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3527, - "nodeType": "ExpressionStatement", - "src": "984:28:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3530, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 3528, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3502, - "src": "1068:4:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 3529, - "name": "_tokenName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3510, - "src": "1075:10:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "1068:17:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 3531, - "nodeType": "ExpressionStatement", - "src": "1068:17:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3534, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 3532, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3504, - "src": "1166:8:6", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 3533, - "name": "_decimalUnits", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3512, - "src": "1177:13:6", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "1166:24:6", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 3535, - "nodeType": "ExpressionStatement", - "src": "1166:24:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3538, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 3536, - "name": "symbol", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3506, - "src": "1270:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 3537, - "name": "_tokenSymbol", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3514, - "src": "1279:12:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "1270:21:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 3539, - "nodeType": "ExpressionStatement", - "src": "1270:21:6" - } - ] - }, - "documentation": null, - "id": 3541, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "EIP20", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3515, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3508, - "name": "_initialAmount", - "nodeType": "VariableDeclaration", - "scope": 3541, - "src": "749:22:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3507, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "749:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3510, - "name": "_tokenName", - "nodeType": "VariableDeclaration", - "scope": 3541, - "src": "781:17:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 3509, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "781:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3512, - "name": "_decimalUnits", - "nodeType": "VariableDeclaration", - "scope": 3541, - "src": "808:19:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 3511, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "808:5:6", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3514, - "name": "_tokenSymbol", - "nodeType": "VariableDeclaration", - "scope": 3541, - "src": "837:19:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 3513, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "837:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "739:127:6" - }, - "payable": false, - "returnParameters": { - "id": 3516, - "nodeType": "ParameterList", - "parameters": [], - "src": "874:0:6" - }, - "scope": 3716, - "src": "725:642:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 3581, - "nodeType": "Block", - "src": "1450:531:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3556, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3551, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "1806:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3554, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3552, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "1815:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3553, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1815:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1806:20:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "argumentTypes": null, - "id": 3555, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3545, - "src": "1830:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1806:30:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 3550, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3895, - 3896 - ], - "referencedDeclaration": 3895, - "src": "1798:7:6", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 3557, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1798:39:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3558, - "nodeType": "ExpressionStatement", - "src": "1798:39:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3564, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3559, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "1847:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3562, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3560, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "1856:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3561, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1856:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1847:20:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "id": 3563, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3545, - "src": "1871:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1847:30:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3565, - "nodeType": "ExpressionStatement", - "src": "1847:30:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3570, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3566, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "1887:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3568, - "indexExpression": { - "argumentTypes": null, - "id": 3567, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3543, - "src": "1896:3:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1887:13:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "argumentTypes": null, - "id": 3569, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3545, - "src": "1904:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1887:23:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3571, - "nodeType": "ExpressionStatement", - "src": "1887:23:6" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3573, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "1929:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3574, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1929:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3575, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3543, - "src": "1941:3:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3576, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3545, - "src": "1946:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3572, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3773, - "src": "1920:8:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 3577, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1920:33:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3578, - "nodeType": "ExpressionStatement", - "src": "1920:33:6" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 3579, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1970:4:6", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 3549, - "id": 3580, - "nodeType": "Return", - "src": "1963:11:6" - } - ] - }, - "documentation": null, - "id": 3582, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3546, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3543, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 3582, - "src": "1391:11:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3542, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1391:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3545, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3582, - "src": "1404:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3544, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1404:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1390:29:6" - }, - "payable": false, - "returnParameters": { - "id": 3549, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3548, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3582, - "src": "1436:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3547, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1436:4:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1435:14:6" - }, - "scope": 3716, - "src": "1373:608:6", - "stateMutability": "nonpayable", - "superFunction": 3736, - "visibility": "public" - }, - { - "body": { - "id": 3648, - "nodeType": "Block", - "src": "2083:593:6", - "statements": [ - { - "assignments": [ - 3594 - ], - "declarations": [ - { - "constant": false, - "id": 3594, - "name": "allowance", - "nodeType": "VariableDeclaration", - "scope": 3649, - "src": "2330:17:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3593, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2330:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 3601, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3595, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3715, - "src": "2350:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3597, - "indexExpression": { - "argumentTypes": null, - "id": 3596, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3584, - "src": "2358:5:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2350:14:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3600, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3598, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "2365:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3599, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2365:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2350:26:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2330:46:6" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 3611, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3607, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3603, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "2394:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3605, - "indexExpression": { - "argumentTypes": null, - "id": 3604, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3584, - "src": "2403:5:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2394:15:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "argumentTypes": null, - "id": 3606, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3588, - "src": "2413:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2394:25:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3610, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 3608, - "name": "allowance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3594, - "src": "2423:9:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "argumentTypes": null, - "id": 3609, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3588, - "src": "2436:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2423:19:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "2394:48:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 3602, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3895, - 3896 - ], - "referencedDeclaration": 3895, - "src": "2386:7:6", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 3612, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2386:57:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3613, - "nodeType": "ExpressionStatement", - "src": "2386:57:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3618, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3614, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "2453:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3616, - "indexExpression": { - "argumentTypes": null, - "id": 3615, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3586, - "src": "2462:3:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2453:13:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "argumentTypes": null, - "id": 3617, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3588, - "src": "2470:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2453:23:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3619, - "nodeType": "ExpressionStatement", - "src": "2453:23:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3624, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3620, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "2486:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3622, - "indexExpression": { - "argumentTypes": null, - "id": 3621, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3584, - "src": "2495:5:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2486:15:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "id": 3623, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3588, - "src": "2505:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2486:25:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3625, - "nodeType": "ExpressionStatement", - "src": "2486:25:6" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3628, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 3626, - "name": "allowance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3594, - "src": "2525:9:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "id": 3627, - "name": "MAX_UINT256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3500, - "src": "2537:11:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2525:23:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 3639, - "nodeType": "IfStatement", - "src": "2521:90:6", - "trueBody": { - "id": 3638, - "nodeType": "Block", - "src": "2550:61:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 3636, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3629, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3715, - "src": "2564:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3633, - "indexExpression": { - "argumentTypes": null, - "id": 3630, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3584, - "src": "2572:5:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2564:14:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3634, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3631, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "2579:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3632, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2579:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2564:26:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "id": 3635, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3588, - "src": "2594:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2564:36:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3637, - "nodeType": "ExpressionStatement", - "src": "2564:36:6" - } - ] - } - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 3641, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3584, - "src": "2629:5:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3642, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3586, - "src": "2636:3:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3643, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3588, - "src": "2641:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3640, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3773, - "src": "2620:8:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 3644, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2620:28:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3645, - "nodeType": "ExpressionStatement", - "src": "2620:28:6" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 3646, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2665:4:6", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 3592, - "id": 3647, - "nodeType": "Return", - "src": "2658:11:6" - } - ] - }, - "documentation": null, - "id": 3649, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transferFrom", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3589, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3584, - "name": "_from", - "nodeType": "VariableDeclaration", - "scope": 3649, - "src": "2009:13:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3583, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2009:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3586, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 3649, - "src": "2024:11:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3585, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2024:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3588, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3649, - "src": "2037:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3587, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2037:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2008:44:6" - }, - "payable": false, - "returnParameters": { - "id": 3592, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3591, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3649, - "src": "2069:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3590, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2069:4:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2068:14:6" - }, - "scope": 3716, - "src": "1987:689:6", - "stateMutability": "nonpayable", - "superFunction": 3747, - "visibility": "public" - }, - { - "body": { - "id": 3660, - "nodeType": "Block", - "src": "2755:40:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3656, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "2772:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3658, - "indexExpression": { - "argumentTypes": null, - "id": 3657, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3651, - "src": "2781:6:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2772:16:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 3655, - "id": 3659, - "nodeType": "Return", - "src": "2765:23:6" - } - ] - }, - "documentation": null, - "id": 3661, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "balanceOf", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3652, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3651, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 3661, - "src": "2701:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3650, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2701:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2700:16:6" - }, - "payable": false, - "returnParameters": { - "id": 3655, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3654, - "name": "balance", - "nodeType": "VariableDeclaration", - "scope": 3661, - "src": "2738:15:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3653, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2738:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2737:17:6" - }, - "scope": 3716, - "src": "2682:113:6", - "stateMutability": "view", - "superFunction": 3727, - "visibility": "public" - }, - { - "body": { - "id": 3688, - "nodeType": "Block", - "src": "2882:124:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 3677, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3670, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3715, - "src": "2892:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3674, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3671, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "2900:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3672, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2900:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2892:19:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3675, - "indexExpression": { - "argumentTypes": null, - "id": 3673, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3663, - "src": "2912:8:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2892:29:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 3676, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3665, - "src": "2924:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2892:38:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3678, - "nodeType": "ExpressionStatement", - "src": "2892:38:6" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3680, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "2949:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3681, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2949:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3682, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3663, - "src": "2961:8:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3683, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3665, - "src": "2971:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3679, - "name": "Approval", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3781, - "src": "2940:8:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 3684, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2940:38:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3685, - "nodeType": "ExpressionStatement", - "src": "2940:38:6" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 3686, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2995:4:6", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 3669, - "id": 3687, - "nodeType": "Return", - "src": "2988:11:6" - } - ] - }, - "documentation": null, - "id": 3689, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "approve", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3666, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3663, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3689, - "src": "2818:16:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3662, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2818:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3665, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3689, - "src": "2836:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3664, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2836:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2817:34:6" - }, - "payable": false, - "returnParameters": { - "id": 3669, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3668, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3689, - "src": "2868:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3667, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2868:4:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2867:14:6" - }, - "scope": 3716, - "src": "2801:205:6", - "stateMutability": "nonpayable", - "superFunction": 3756, - "visibility": "public" - }, - { - "body": { - "id": 3704, - "nodeType": "Block", - "src": "3109:47:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3698, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3715, - "src": "3124:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3700, - "indexExpression": { - "argumentTypes": null, - "id": 3699, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3691, - "src": "3132:6:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3124:15:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3702, - "indexExpression": { - "argumentTypes": null, - "id": 3701, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3693, - "src": "3140:8:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3124:25:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 3697, - "id": 3703, - "nodeType": "Return", - "src": "3117:32:6" - } - ] - }, - "documentation": null, - "id": 3705, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "allowance", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3694, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3691, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 3705, - "src": "3031:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3690, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3031:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3693, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3705, - "src": "3047:16:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3692, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3047:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3030:34:6" - }, - "payable": false, - "returnParameters": { - "id": 3697, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3696, - "name": "remaining", - "nodeType": "VariableDeclaration", - "scope": 3705, - "src": "3090:17:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3695, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3090:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3089:19:6" - }, - "scope": 3716, - "src": "3012:144:6", - "stateMutability": "view", - "superFunction": 3765, - "visibility": "public" - }, - { - "constant": false, - "id": 3709, - "name": "balances", - "nodeType": "VariableDeclaration", - "scope": 3716, - "src": "3162:37:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 3708, - "keyType": { - "id": 3706, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3171:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "3162:28:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 3707, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3182:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3715, - "name": "allowed", - "nodeType": "VariableDeclaration", - "scope": 3716, - "src": "3205:57:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - }, - "typeName": { - "id": 3714, - "keyType": { - "id": 3710, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3214:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "3205:49:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - }, - "valueType": { - "id": 3713, - "keyType": { - "id": 3711, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3234:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "3225:28:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 3712, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3245:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - } - }, - "value": null, - "visibility": "internal" - } - ], - "scope": 3717, - "src": "140:3125:6" - } - ], - "src": "83:3183:6" - }, - "legacyAST": { - "absolutePath": "tokens/eip20/EIP20.sol", - "exportedSymbols": { - "EIP20": [ - 3716 - ] - }, - "id": 3717, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 3490, - "literals": [ - "solidity", - "^", - "0.4", - ".8" - ], - "nodeType": "PragmaDirective", - "src": "83:23:6" - }, - { - "absolutePath": "tokens/eip20/EIP20Interface.sol", - "file": "./EIP20Interface.sol", - "id": 3491, - "nodeType": "ImportDirective", - "scope": 3717, - "sourceUnit": 3783, - "src": "108:30:6", - "symbolAliases": [], - "unitAlias": "" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 3492, - "name": "EIP20Interface", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3782, - "src": "158:14:6", - "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" - } - }, - "id": 3493, - "nodeType": "InheritanceSpecifier", - "src": "158:14:6" - } - ], - "contractDependencies": [ - 3782 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 3716, - "linearizedBaseContracts": [ - 3716, - 3782 - ], - "name": "EIP20", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": true, - "id": 3500, - "name": "MAX_UINT256", - "nodeType": "VariableDeclaration", - "scope": 3716, - "src": "180:41:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3494, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "180:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", - "typeString": "int_const 1157...(70 digits omitted)...9935" - }, - "id": 3499, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639936_by_1", - "typeString": "int_const 1157...(70 digits omitted)...9936" - }, - "id": 3497, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "hexValue": "32", - "id": 3495, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "211:1:6", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_2_by_1", - "typeString": "int_const 2" - }, - "value": "2" - }, - "nodeType": "BinaryOperation", - "operator": "**", - "rightExpression": { - "argumentTypes": null, - "hexValue": "323536", - "id": 3496, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "214:3:6", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_256_by_1", - "typeString": "int_const 256" - }, - "value": "256" - }, - "src": "211:6:6", - "typeDescriptions": { - "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639936_by_1", - "typeString": "int_const 1157...(70 digits omitted)...9936" - } - }, - "nodeType": "BinaryOperation", - "operator": "-", - "rightExpression": { - "argumentTypes": null, - "hexValue": "31", - "id": 3498, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "220:1:6", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_1_by_1", - "typeString": "int_const 1" - }, - "value": "1" - }, - "src": "211:10:6", - "typeDescriptions": { - "typeIdentifier": "t_rational_115792089237316195423570985008687907853269984665640564039457584007913129639935_by_1", - "typeString": "int_const 1157...(70 digits omitted)...9935" - } - }, - "visibility": "internal" - }, - { - "constant": false, - "id": 3502, - "name": "name", - "nodeType": "VariableDeclaration", - "scope": 3716, - "src": "515:18:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 3501, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "515:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 3504, - "name": "decimals", - "nodeType": "VariableDeclaration", - "scope": 3716, - "src": "586:21:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 3503, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "586:5:6", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 3506, - "name": "symbol", - "nodeType": "VariableDeclaration", - "scope": 3716, - "src": "657:20:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string" - }, - "typeName": { - "id": 3505, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "657:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "public" - }, - { - "body": { - "id": 3540, - "nodeType": "Block", - "src": "874:493:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 3522, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3517, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "884:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3520, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3518, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "893:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3519, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "893:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "884:20:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 3521, - "name": "_initialAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3508, - "src": "907:14:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "884:37:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3523, - "nodeType": "ExpressionStatement", - "src": "884:37:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3526, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 3524, - "name": "totalSupply", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3720, - "src": "984:11:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 3525, - "name": "_initialAmount", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3508, - "src": "998:14:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "984:28:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3527, - "nodeType": "ExpressionStatement", - "src": "984:28:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3530, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 3528, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3502, - "src": "1068:4:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 3529, - "name": "_tokenName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3510, - "src": "1075:10:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "1068:17:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 3531, - "nodeType": "ExpressionStatement", - "src": "1068:17:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3534, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 3532, - "name": "decimals", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3504, - "src": "1166:8:6", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 3533, - "name": "_decimalUnits", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3512, - "src": "1177:13:6", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "src": "1166:24:6", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "id": 3535, - "nodeType": "ExpressionStatement", - "src": "1166:24:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3538, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 3536, - "name": "symbol", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3506, - "src": "1270:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 3537, - "name": "_tokenSymbol", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3514, - "src": "1279:12:6", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "1270:21:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 3539, - "nodeType": "ExpressionStatement", - "src": "1270:21:6" - } - ] - }, - "documentation": null, - "id": 3541, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "EIP20", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3515, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3508, - "name": "_initialAmount", - "nodeType": "VariableDeclaration", - "scope": 3541, - "src": "749:22:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3507, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "749:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3510, - "name": "_tokenName", - "nodeType": "VariableDeclaration", - "scope": 3541, - "src": "781:17:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 3509, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "781:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3512, - "name": "_decimalUnits", - "nodeType": "VariableDeclaration", - "scope": 3541, - "src": "808:19:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - }, - "typeName": { - "id": 3511, - "name": "uint8", - "nodeType": "ElementaryTypeName", - "src": "808:5:6", - "typeDescriptions": { - "typeIdentifier": "t_uint8", - "typeString": "uint8" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3514, - "name": "_tokenSymbol", - "nodeType": "VariableDeclaration", - "scope": 3541, - "src": "837:19:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 3513, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "837:6:6", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "739:127:6" - }, - "payable": false, - "returnParameters": { - "id": 3516, - "nodeType": "ParameterList", - "parameters": [], - "src": "874:0:6" - }, - "scope": 3716, - "src": "725:642:6", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": { - "id": 3581, - "nodeType": "Block", - "src": "1450:531:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3556, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3551, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "1806:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3554, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3552, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "1815:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3553, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1815:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "1806:20:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "argumentTypes": null, - "id": 3555, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3545, - "src": "1830:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1806:30:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 3550, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3895, - 3896 - ], - "referencedDeclaration": 3895, - "src": "1798:7:6", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 3557, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1798:39:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3558, - "nodeType": "ExpressionStatement", - "src": "1798:39:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3564, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3559, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "1847:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3562, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3560, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "1856:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3561, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1856:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1847:20:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "id": 3563, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3545, - "src": "1871:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1847:30:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3565, - "nodeType": "ExpressionStatement", - "src": "1847:30:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3570, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3566, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "1887:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3568, - "indexExpression": { - "argumentTypes": null, - "id": 3567, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3543, - "src": "1896:3:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "1887:13:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "argumentTypes": null, - "id": 3569, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3545, - "src": "1904:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "1887:23:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3571, - "nodeType": "ExpressionStatement", - "src": "1887:23:6" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3573, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "1929:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3574, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "1929:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3575, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3543, - "src": "1941:3:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3576, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3545, - "src": "1946:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3572, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3773, - "src": "1920:8:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 3577, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "1920:33:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3578, - "nodeType": "ExpressionStatement", - "src": "1920:33:6" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 3579, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "1970:4:6", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 3549, - "id": 3580, - "nodeType": "Return", - "src": "1963:11:6" - } - ] - }, - "documentation": null, - "id": 3582, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3546, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3543, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 3582, - "src": "1391:11:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3542, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1391:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3545, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3582, - "src": "1404:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3544, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1404:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1390:29:6" - }, - "payable": false, - "returnParameters": { - "id": 3549, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3548, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3582, - "src": "1436:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3547, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1436:4:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1435:14:6" - }, - "scope": 3716, - "src": "1373:608:6", - "stateMutability": "nonpayable", - "superFunction": 3736, - "visibility": "public" - }, - { - "body": { - "id": 3648, - "nodeType": "Block", - "src": "2083:593:6", - "statements": [ - { - "assignments": [ - 3594 - ], - "declarations": [ - { - "constant": false, - "id": 3594, - "name": "allowance", - "nodeType": "VariableDeclaration", - "scope": 3649, - "src": "2330:17:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3593, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2330:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 3601, - "initialValue": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3595, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3715, - "src": "2350:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3597, - "indexExpression": { - "argumentTypes": null, - "id": 3596, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3584, - "src": "2358:5:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2350:14:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3600, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3598, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "2365:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3599, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2365:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2350:26:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "2330:46:6" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "id": 3611, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3607, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3603, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "2394:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3605, - "indexExpression": { - "argumentTypes": null, - "id": 3604, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3584, - "src": "2403:5:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2394:15:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "argumentTypes": null, - "id": 3606, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3588, - "src": "2413:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2394:25:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "BinaryOperation", - "operator": "&&", - "rightExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3610, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 3608, - "name": "allowance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3594, - "src": "2423:9:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">=", - "rightExpression": { - "argumentTypes": null, - "id": 3609, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3588, - "src": "2436:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2423:19:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "src": "2394:48:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - ], - "id": 3602, - "name": "require", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 3895, - 3896 - ], - "referencedDeclaration": 3895, - "src": "2386:7:6", - "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", - "typeString": "function (bool) pure" - } - }, - "id": 3612, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2386:57:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3613, - "nodeType": "ExpressionStatement", - "src": "2386:57:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3618, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3614, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "2453:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3616, - "indexExpression": { - "argumentTypes": null, - "id": 3615, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3586, - "src": "2462:3:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2453:13:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "+=", - "rightHandSide": { - "argumentTypes": null, - "id": 3617, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3588, - "src": "2470:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2453:23:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3619, - "nodeType": "ExpressionStatement", - "src": "2453:23:6" - }, - { - "expression": { - "argumentTypes": null, - "id": 3624, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3620, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "2486:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3622, - "indexExpression": { - "argumentTypes": null, - "id": 3621, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3584, - "src": "2495:5:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2486:15:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "id": 3623, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3588, - "src": "2505:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2486:25:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3625, - "nodeType": "ExpressionStatement", - "src": "2486:25:6" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3628, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 3626, - "name": "allowance", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3594, - "src": "2525:9:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "<", - "rightExpression": { - "argumentTypes": null, - "id": 3627, - "name": "MAX_UINT256", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3500, - "src": "2537:11:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2525:23:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 3639, - "nodeType": "IfStatement", - "src": "2521:90:6", - "trueBody": { - "id": 3638, - "nodeType": "Block", - "src": "2550:61:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 3636, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3629, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3715, - "src": "2564:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3633, - "indexExpression": { - "argumentTypes": null, - "id": 3630, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3584, - "src": "2572:5:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2564:14:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3634, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3631, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "2579:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3632, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2579:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2564:26:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "-=", - "rightHandSide": { - "argumentTypes": null, - "id": 3635, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3588, - "src": "2594:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2564:36:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3637, - "nodeType": "ExpressionStatement", - "src": "2564:36:6" - } - ] - } - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 3641, - "name": "_from", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3584, - "src": "2629:5:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3642, - "name": "_to", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3586, - "src": "2636:3:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3643, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3588, - "src": "2641:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3640, - "name": "Transfer", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3773, - "src": "2620:8:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 3644, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2620:28:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3645, - "nodeType": "ExpressionStatement", - "src": "2620:28:6" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 3646, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2665:4:6", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 3592, - "id": 3647, - "nodeType": "Return", - "src": "2658:11:6" - } - ] - }, - "documentation": null, - "id": 3649, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transferFrom", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3589, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3584, - "name": "_from", - "nodeType": "VariableDeclaration", - "scope": 3649, - "src": "2009:13:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3583, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2009:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3586, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 3649, - "src": "2024:11:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3585, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2024:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3588, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3649, - "src": "2037:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3587, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2037:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2008:44:6" - }, - "payable": false, - "returnParameters": { - "id": 3592, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3591, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3649, - "src": "2069:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3590, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2069:4:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2068:14:6" - }, - "scope": 3716, - "src": "1987:689:6", - "stateMutability": "nonpayable", - "superFunction": 3747, - "visibility": "public" - }, - { - "body": { - "id": 3660, - "nodeType": "Block", - "src": "2755:40:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3656, - "name": "balances", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3709, - "src": "2772:8:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3658, - "indexExpression": { - "argumentTypes": null, - "id": 3657, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3651, - "src": "2781:6:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2772:16:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 3655, - "id": 3659, - "nodeType": "Return", - "src": "2765:23:6" - } - ] - }, - "documentation": null, - "id": 3661, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "balanceOf", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3652, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3651, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 3661, - "src": "2701:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3650, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2701:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2700:16:6" - }, - "payable": false, - "returnParameters": { - "id": 3655, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3654, - "name": "balance", - "nodeType": "VariableDeclaration", - "scope": 3661, - "src": "2738:15:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3653, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2738:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2737:17:6" - }, - "scope": 3716, - "src": "2682:113:6", - "stateMutability": "view", - "superFunction": 3727, - "visibility": "public" - }, - { - "body": { - "id": 3688, - "nodeType": "Block", - "src": "2882:124:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "id": 3677, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3670, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3715, - "src": "2892:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3674, - "indexExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3671, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "2900:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3672, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2900:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "2892:19:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3675, - "indexExpression": { - "argumentTypes": null, - "id": 3673, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3663, - "src": "2912:8:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "nodeType": "IndexAccess", - "src": "2892:29:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 3676, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3665, - "src": "2924:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2892:38:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 3678, - "nodeType": "ExpressionStatement", - "src": "2892:38:6" - }, - { - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 3680, - "name": "msg", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "2949:3:6", - "typeDescriptions": { - "typeIdentifier": "t_magic_message", - "typeString": "msg" - } - }, - "id": 3681, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "sender", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2949:10:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3682, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3663, - "src": "2961:8:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3683, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3665, - "src": "2971:6:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - ], - "id": 3679, - "name": "Approval", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3781, - "src": "2940:8:6", - "typeDescriptions": { - "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", - "typeString": "function (address,address,uint256)" - } - }, - "id": 3684, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2940:38:6", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 3685, - "nodeType": "ExpressionStatement", - "src": "2940:38:6" - }, - { - "expression": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 3686, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2995:4:6", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "functionReturnParameters": 3669, - "id": 3687, - "nodeType": "Return", - "src": "2988:11:6" - } - ] - }, - "documentation": null, - "id": 3689, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "approve", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3666, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3663, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3689, - "src": "2818:16:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3662, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2818:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3665, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3689, - "src": "2836:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3664, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2836:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2817:34:6" - }, - "payable": false, - "returnParameters": { - "id": 3669, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3668, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3689, - "src": "2868:12:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3667, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2868:4:6", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2867:14:6" - }, - "scope": 3716, - "src": "2801:205:6", - "stateMutability": "nonpayable", - "superFunction": 3756, - "visibility": "public" - }, - { - "body": { - "id": 3704, - "nodeType": "Block", - "src": "3109:47:6", - "statements": [ - { - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 3698, - "name": "allowed", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3715, - "src": "3124:7:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - } - }, - "id": 3700, - "indexExpression": { - "argumentTypes": null, - "id": 3699, - "name": "_owner", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3691, - "src": "3132:6:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3124:15:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - } - }, - "id": 3702, - "indexExpression": { - "argumentTypes": null, - "id": 3701, - "name": "_spender", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3693, - "src": "3140:8:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "3124:25:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "functionReturnParameters": 3697, - "id": 3703, - "nodeType": "Return", - "src": "3117:32:6" - } - ] - }, - "documentation": null, - "id": 3705, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "allowance", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3694, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3691, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 3705, - "src": "3031:14:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3690, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3031:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3693, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3705, - "src": "3047:16:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3692, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3047:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3030:34:6" - }, - "payable": false, - "returnParameters": { - "id": 3697, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3696, - "name": "remaining", - "nodeType": "VariableDeclaration", - "scope": 3705, - "src": "3090:17:6", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3695, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3090:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "3089:19:6" - }, - "scope": 3716, - "src": "3012:144:6", - "stateMutability": "view", - "superFunction": 3765, - "visibility": "public" - }, - { - "constant": false, - "id": 3709, - "name": "balances", - "nodeType": "VariableDeclaration", - "scope": 3716, - "src": "3162:37:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "typeName": { - "id": 3708, - "keyType": { - "id": 3706, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3171:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "3162:28:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 3707, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3182:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3715, - "name": "allowed", - "nodeType": "VariableDeclaration", - "scope": 3716, - "src": "3205:57:6", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - }, - "typeName": { - "id": 3714, - "keyType": { - "id": 3710, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3214:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "3205:49:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", - "typeString": "mapping(address => mapping(address => uint256))" - }, - "valueType": { - "id": 3713, - "keyType": { - "id": 3711, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3234:7:6", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Mapping", - "src": "3225:28:6", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", - "typeString": "mapping(address => uint256)" - }, - "valueType": { - "id": 3712, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "3245:7:6", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - } - } - }, - "value": null, - "visibility": "internal" - } - ], - "scope": 3717, - "src": "140:3125:6" - } - ], - "src": "83:3183:6" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-06-20T22:39:18.103Z" -} \ No newline at end of file diff --git a/build/contracts/EIP20Interface.json b/build/contracts/EIP20Interface.json deleted file mode 100644 index a8704a8..0000000 --- a/build/contracts/EIP20Interface.json +++ /dev/null @@ -1,1799 +0,0 @@ -{ - "contractName": "EIP20Interface", - "abi": [ - { - "constant": true, - "inputs": [], - "name": "totalSupply", - "outputs": [ - { - "name": "", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "_from", - "type": "address" - }, - { - "indexed": true, - "name": "_to", - "type": "address" - }, - { - "indexed": false, - "name": "_value", - "type": "uint256" - } - ], - "name": "Transfer", - "type": "event" - }, - { - "anonymous": false, - "inputs": [ - { - "indexed": true, - "name": "_owner", - "type": "address" - }, - { - "indexed": true, - "name": "_spender", - "type": "address" - }, - { - "indexed": false, - "name": "_value", - "type": "uint256" - } - ], - "name": "Approval", - "type": "event" - }, - { - "constant": true, - "inputs": [ - { - "name": "_owner", - "type": "address" - } - ], - "name": "balanceOf", - "outputs": [ - { - "name": "balance", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_to", - "type": "address" - }, - { - "name": "_value", - "type": "uint256" - } - ], - "name": "transfer", - "outputs": [ - { - "name": "success", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_from", - "type": "address" - }, - { - "name": "_to", - "type": "address" - }, - { - "name": "_value", - "type": "uint256" - } - ], - "name": "transferFrom", - "outputs": [ - { - "name": "success", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": false, - "inputs": [ - { - "name": "_spender", - "type": "address" - }, - { - "name": "_value", - "type": "uint256" - } - ], - "name": "approve", - "outputs": [ - { - "name": "success", - "type": "bool" - } - ], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, - { - "constant": true, - "inputs": [ - { - "name": "_owner", - "type": "address" - }, - { - "name": "_spender", - "type": "address" - } - ], - "name": "allowance", - "outputs": [ - { - "name": "remaining", - "type": "uint256" - } - ], - "payable": false, - "stateMutability": "view", - "type": "function" - } - ], - "bytecode": "0x", - "deployedBytecode": "0x", - "sourceMap": "", - "deployedSourceMap": "", - "source": "// Abstract contract for the full ERC 20 Token standard\n// https://github.com/ethereum/EIPs/issues/20\npragma solidity ^0.4.8;\n\ncontract EIP20Interface {\n /* This is a slight change to the ERC20 base standard.\n function totalSupply() constant returns (uint256 supply);\n is replaced with:\n uint256 public totalSupply;\n This automatically creates a getter function for the totalSupply.\n This is moved to the base contract since public getter functions are not\n currently recognised as an implementation of the matching abstract\n function by the compiler.\n */\n /// total amount of tokens\n uint256 public totalSupply;\n\n /// @param _owner The address from which the balance will be retrieved\n /// @return The balance\n function balanceOf(address _owner) public view returns (uint256 balance);\n\n /// @notice send `_value` token to `_to` from `msg.sender`\n /// @param _to The address of the recipient\n /// @param _value The amount of token to be transferred\n /// @return Whether the transfer was successful or not\n function transfer(address _to, uint256 _value) public returns (bool success);\n\n /// @notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from`\n /// @param _from The address of the sender\n /// @param _to The address of the recipient\n /// @param _value The amount of token to be transferred\n /// @return Whether the transfer was successful or not\n function transferFrom(address _from, address _to, uint256 _value) public returns (bool success);\n\n /// @notice `msg.sender` approves `_spender` to spend `_value` tokens\n /// @param _spender The address of the account able to transfer the tokens\n /// @param _value The amount of tokens to be approved for transfer\n /// @return Whether the approval was successful or not\n function approve(address _spender, uint256 _value) public returns (bool success);\n\n /// @param _owner The address of the account owning tokens\n /// @param _spender The address of the account able to transfer the tokens\n /// @return Amount of remaining tokens allowed to spent\n function allowance(address _owner, address _spender) public view returns (uint256 remaining);\n\n event Transfer(address indexed _from, address indexed _to, uint256 _value);\n event Approval(address indexed _owner, address indexed _spender, uint256 _value);\n}\n", - "sourcePath": "tokens/eip20/EIP20Interface.sol", - "ast": { - "absolutePath": "tokens/eip20/EIP20Interface.sol", - "exportedSymbols": { - "EIP20Interface": [ - 3782 - ] - }, - "id": 3783, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 3718, - "literals": [ - "solidity", - "^", - "0.4", - ".8" - ], - "nodeType": "PragmaDirective", - "src": "102:23:7" - }, - { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 3782, - "linearizedBaseContracts": [ - 3782 - ], - "name": "EIP20Interface", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 3720, - "name": "totalSupply", - "nodeType": "VariableDeclaration", - "scope": 3782, - "src": "618:26:7", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3719, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "618:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "public" - }, - { - "body": null, - "documentation": "@param _owner The address from which the balance will be retrieved\n @return The balance", - "id": 3727, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "balanceOf", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3723, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3722, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 3727, - "src": "773:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3721, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "773:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "772:16:7" - }, - "payable": false, - "returnParameters": { - "id": 3726, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3725, - "name": "balance", - "nodeType": "VariableDeclaration", - "scope": 3727, - "src": "810:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3724, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "810:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "809:17:7" - }, - "scope": 3782, - "src": "754:73:7", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": "@notice send `_value` token to `_to` from `msg.sender`\n @param _to The address of the recipient\n @param _value The amount of token to be transferred\n @return Whether the transfer was successful or not", - "id": 3736, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3732, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3729, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 3736, - "src": "1081:11:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3728, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1081:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3731, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3736, - "src": "1094:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3730, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1094:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1080:29:7" - }, - "payable": false, - "returnParameters": { - "id": 3735, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3734, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3736, - "src": "1126:12:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3733, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1126:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1125:14:7" - }, - "scope": 3782, - "src": "1063:77:7", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": "@notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from`\n @param _from The address of the sender\n @param _to The address of the recipient\n @param _value The amount of token to be transferred\n @return Whether the transfer was successful or not", - "id": 3747, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transferFrom", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3743, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3738, - "name": "_from", - "nodeType": "VariableDeclaration", - "scope": 3747, - "src": "1483:13:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3737, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1483:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3740, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 3747, - "src": "1498:11:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3739, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1498:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3742, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3747, - "src": "1511:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3741, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1511:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1482:44:7" - }, - "payable": false, - "returnParameters": { - "id": 3746, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3745, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3747, - "src": "1543:12:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3744, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1543:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1542:14:7" - }, - "scope": 3782, - "src": "1461:96:7", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": "@notice `msg.sender` approves `_spender` to spend `_value` tokens\n @param _spender The address of the account able to transfer the tokens\n @param _value The amount of tokens to be approved for transfer\n @return Whether the approval was successful or not", - "id": 3756, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "approve", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3752, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3749, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3756, - "src": "1863:16:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3748, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1863:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3751, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3756, - "src": "1881:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3750, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1881:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1862:34:7" - }, - "payable": false, - "returnParameters": { - "id": 3755, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3754, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3756, - "src": "1913:12:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3753, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1913:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1912:14:7" - }, - "scope": 3782, - "src": "1846:81:7", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": "@param _owner The address of the account owning tokens\n @param _spender The address of the account able to transfer the tokens\n @return Amount of remaining tokens allowed to spent", - "id": 3765, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "allowance", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3761, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3758, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 3765, - "src": "2154:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3757, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2154:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3760, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3765, - "src": "2170:16:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3759, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2170:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2153:34:7" - }, - "payable": false, - "returnParameters": { - "id": 3764, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3763, - "name": "remaining", - "nodeType": "VariableDeclaration", - "scope": 3765, - "src": "2209:17:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3762, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2209:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2208:19:7" - }, - "scope": 3782, - "src": "2135:93:7", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 3773, - "name": "Transfer", - "nodeType": "EventDefinition", - "parameters": { - "id": 3772, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3767, - "indexed": true, - "name": "_from", - "nodeType": "VariableDeclaration", - "scope": 3773, - "src": "2249:21:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3766, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2249:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3769, - "indexed": true, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 3773, - "src": "2272:19:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3768, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2272:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3771, - "indexed": false, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3773, - "src": "2293:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3770, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2293:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2248:60:7" - }, - "src": "2234:75:7" - }, - { - "anonymous": false, - "documentation": null, - "id": 3781, - "name": "Approval", - "nodeType": "EventDefinition", - "parameters": { - "id": 3780, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3775, - "indexed": true, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 3781, - "src": "2329:22:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3774, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2329:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3777, - "indexed": true, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3781, - "src": "2353:24:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3776, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2353:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3779, - "indexed": false, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3781, - "src": "2379:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3778, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2379:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2328:66:7" - }, - "src": "2314:81:7" - } - ], - "scope": 3783, - "src": "127:2270:7" - } - ], - "src": "102:2296:7" - }, - "legacyAST": { - "absolutePath": "tokens/eip20/EIP20Interface.sol", - "exportedSymbols": { - "EIP20Interface": [ - 3782 - ] - }, - "id": 3783, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 3718, - "literals": [ - "solidity", - "^", - "0.4", - ".8" - ], - "nodeType": "PragmaDirective", - "src": "102:23:7" - }, - { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": false, - "id": 3782, - "linearizedBaseContracts": [ - 3782 - ], - "name": "EIP20Interface", - "nodeType": "ContractDefinition", - "nodes": [ - { - "constant": false, - "id": 3720, - "name": "totalSupply", - "nodeType": "VariableDeclaration", - "scope": 3782, - "src": "618:26:7", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3719, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "618:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "public" - }, - { - "body": null, - "documentation": "@param _owner The address from which the balance will be retrieved\n @return The balance", - "id": 3727, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "balanceOf", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3723, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3722, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 3727, - "src": "773:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3721, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "773:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "772:16:7" - }, - "payable": false, - "returnParameters": { - "id": 3726, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3725, - "name": "balance", - "nodeType": "VariableDeclaration", - "scope": 3727, - "src": "810:15:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3724, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "810:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "809:17:7" - }, - "scope": 3782, - "src": "754:73:7", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": "@notice send `_value` token to `_to` from `msg.sender`\n @param _to The address of the recipient\n @param _value The amount of token to be transferred\n @return Whether the transfer was successful or not", - "id": 3736, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transfer", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3732, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3729, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 3736, - "src": "1081:11:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3728, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1081:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3731, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3736, - "src": "1094:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3730, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1094:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1080:29:7" - }, - "payable": false, - "returnParameters": { - "id": 3735, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3734, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3736, - "src": "1126:12:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3733, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1126:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1125:14:7" - }, - "scope": 3782, - "src": "1063:77:7", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": "@notice send `_value` token to `_to` from `_from` on the condition it is approved by `_from`\n @param _from The address of the sender\n @param _to The address of the recipient\n @param _value The amount of token to be transferred\n @return Whether the transfer was successful or not", - "id": 3747, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "transferFrom", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3743, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3738, - "name": "_from", - "nodeType": "VariableDeclaration", - "scope": 3747, - "src": "1483:13:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3737, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1483:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3740, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 3747, - "src": "1498:11:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3739, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1498:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3742, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3747, - "src": "1511:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3741, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1511:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1482:44:7" - }, - "payable": false, - "returnParameters": { - "id": 3746, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3745, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3747, - "src": "1543:12:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3744, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1543:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1542:14:7" - }, - "scope": 3782, - "src": "1461:96:7", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": "@notice `msg.sender` approves `_spender` to spend `_value` tokens\n @param _spender The address of the account able to transfer the tokens\n @param _value The amount of tokens to be approved for transfer\n @return Whether the approval was successful or not", - "id": 3756, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "approve", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3752, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3749, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3756, - "src": "1863:16:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3748, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "1863:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3751, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3756, - "src": "1881:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3750, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "1881:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1862:34:7" - }, - "payable": false, - "returnParameters": { - "id": 3755, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3754, - "name": "success", - "nodeType": "VariableDeclaration", - "scope": 3756, - "src": "1913:12:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 3753, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "1913:4:7", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "1912:14:7" - }, - "scope": 3782, - "src": "1846:81:7", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "body": null, - "documentation": "@param _owner The address of the account owning tokens\n @param _spender The address of the account able to transfer the tokens\n @return Amount of remaining tokens allowed to spent", - "id": 3765, - "implemented": false, - "isConstructor": false, - "isDeclaredConst": true, - "modifiers": [], - "name": "allowance", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 3761, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3758, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 3765, - "src": "2154:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3757, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2154:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3760, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3765, - "src": "2170:16:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3759, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2170:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2153:34:7" - }, - "payable": false, - "returnParameters": { - "id": 3764, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3763, - "name": "remaining", - "nodeType": "VariableDeclaration", - "scope": 3765, - "src": "2209:17:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3762, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2209:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2208:19:7" - }, - "scope": 3782, - "src": "2135:93:7", - "stateMutability": "view", - "superFunction": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 3773, - "name": "Transfer", - "nodeType": "EventDefinition", - "parameters": { - "id": 3772, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3767, - "indexed": true, - "name": "_from", - "nodeType": "VariableDeclaration", - "scope": 3773, - "src": "2249:21:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3766, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2249:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3769, - "indexed": true, - "name": "_to", - "nodeType": "VariableDeclaration", - "scope": 3773, - "src": "2272:19:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3768, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2272:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3771, - "indexed": false, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3773, - "src": "2293:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3770, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2293:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2248:60:7" - }, - "src": "2234:75:7" - }, - { - "anonymous": false, - "documentation": null, - "id": 3781, - "name": "Approval", - "nodeType": "EventDefinition", - "parameters": { - "id": 3780, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 3775, - "indexed": true, - "name": "_owner", - "nodeType": "VariableDeclaration", - "scope": 3781, - "src": "2329:22:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3774, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2329:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3777, - "indexed": true, - "name": "_spender", - "nodeType": "VariableDeclaration", - "scope": 3781, - "src": "2353:24:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 3776, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2353:7:7", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 3779, - "indexed": false, - "name": "_value", - "nodeType": "VariableDeclaration", - "scope": 3781, - "src": "2379:14:7", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3778, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2379:7:7", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2328:66:7" - }, - "src": "2314:81:7" - } - ], - "scope": 3783, - "src": "127:2270:7" - } - ], - "src": "102:2296:7" - }, - "compiler": { - "name": "solc", - "version": "0.4.24+commit.e67f0147.Emscripten.clang" - }, - "networks": {}, - "schemaVersion": "2.0.1", - "updatedAt": "2018-06-20T22:39:18.105Z" -} \ No newline at end of file diff --git a/build/contracts/ERC20.json b/build/contracts/ERC20.json new file mode 100644 index 0000000..a784115 --- /dev/null +++ b/build/contracts/ERC20.json @@ -0,0 +1,1235 @@ +{ + "contractName": "ERC20", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "who", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "to", + "type": "address" + }, + { + "name": "value", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "from", + "type": "address" + }, + { + "indexed": true, + "name": "to", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "constant": true, + "inputs": [ + { + "name": "owner", + "type": "address" + }, + { + "name": "spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "from", + "type": "address" + }, + { + "name": "to", + "type": "address" + }, + { + "name": "value", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "spender", + "type": "address" + }, + { + "name": "value", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "sourceMap": "", + "deployedSourceMap": "", + "source": "pragma solidity 0.4.24;\n\nimport \"./ERC20Basic.sol\";\n\n\n/**\n * @title ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/20\n */\ncontract ERC20 is ERC20Basic {\n function allowance(address owner, address spender)\n public view returns (uint256);\n\n function transferFrom(address from, address to, uint256 value)\n public returns (bool);\n\n function approve(address spender, uint256 value) public returns (bool);\n event Approval(\n address indexed owner,\n address indexed spender,\n uint256 value\n );\n}\n", + "sourcePath": "/home/rob/Github/computable/contracts/ERC20.sol", + "ast": { + "absolutePath": "/home/rob/Github/computable/contracts/ERC20.sol", + "exportedSymbols": { + "ERC20": [ + 408 + ] + }, + "id": 409, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 367, + "literals": [ + "solidity", + "0.4", + ".24" + ], + "nodeType": "PragmaDirective", + "src": "0:23:2" + }, + { + "absolutePath": "/home/rob/Github/computable/contracts/ERC20Basic.sol", + "file": "./ERC20Basic.sol", + "id": 368, + "nodeType": "ImportDirective", + "scope": 409, + "sourceUnit": 441, + "src": "25:26:2", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 369, + "name": "ERC20Basic", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 440, + "src": "161:10:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC20Basic_$440", + "typeString": "contract ERC20Basic" + } + }, + "id": 370, + "nodeType": "InheritanceSpecifier", + "src": "161:10:2" + } + ], + "contractDependencies": [ + 440 + ], + "contractKind": "contract", + "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", + "fullyImplemented": false, + "id": 408, + "linearizedBaseContracts": [ + 408, + 440 + ], + "name": "ERC20", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": null, + "documentation": null, + "id": 379, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "allowance", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 375, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 372, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 379, + "src": "195:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 371, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "195:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 374, + "name": "spender", + "nodeType": "VariableDeclaration", + "scope": 379, + "src": "210:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 373, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "210:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "194:32:2" + }, + "payable": false, + "returnParameters": { + "id": 378, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 377, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 379, + "src": "252:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 376, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "252:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "251:9:2" + }, + "scope": 408, + "src": "176:85:2", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 390, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transferFrom", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 386, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 381, + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 390, + "src": "287:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 380, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "287:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 383, + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 390, + "src": "301:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 382, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "301:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 385, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 390, + "src": "313:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 384, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "313:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "286:41:2" + }, + "payable": false, + "returnParameters": { + "id": 389, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 388, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 390, + "src": "348:4:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 387, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "348:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "347:6:2" + }, + "scope": 408, + "src": "265:89:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 399, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "approve", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 395, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 392, + "name": "spender", + "nodeType": "VariableDeclaration", + "scope": 399, + "src": "375:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 391, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "375:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 394, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 399, + "src": "392:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 393, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "392:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "374:32:2" + }, + "payable": false, + "returnParameters": { + "id": 398, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 397, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 399, + "src": "423:4:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 396, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "423:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "422:6:2" + }, + "scope": 408, + "src": "358:71:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 407, + "name": "Approval", + "nodeType": "EventDefinition", + "parameters": { + "id": 406, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 401, + "indexed": true, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 407, + "src": "452:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 400, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "452:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 403, + "indexed": true, + "name": "spender", + "nodeType": "VariableDeclaration", + "scope": 407, + "src": "479:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 402, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "479:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 405, + "indexed": false, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 407, + "src": "508:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 404, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "508:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "446:79:2" + }, + "src": "432:94:2" + } + ], + "scope": 409, + "src": "143:385:2" + } + ], + "src": "0:529:2" + }, + "legacyAST": { + "absolutePath": "/home/rob/Github/computable/contracts/ERC20.sol", + "exportedSymbols": { + "ERC20": [ + 408 + ] + }, + "id": 409, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 367, + "literals": [ + "solidity", + "0.4", + ".24" + ], + "nodeType": "PragmaDirective", + "src": "0:23:2" + }, + { + "absolutePath": "/home/rob/Github/computable/contracts/ERC20Basic.sol", + "file": "./ERC20Basic.sol", + "id": 368, + "nodeType": "ImportDirective", + "scope": 409, + "sourceUnit": 441, + "src": "25:26:2", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 369, + "name": "ERC20Basic", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 440, + "src": "161:10:2", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC20Basic_$440", + "typeString": "contract ERC20Basic" + } + }, + "id": 370, + "nodeType": "InheritanceSpecifier", + "src": "161:10:2" + } + ], + "contractDependencies": [ + 440 + ], + "contractKind": "contract", + "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", + "fullyImplemented": false, + "id": 408, + "linearizedBaseContracts": [ + 408, + 440 + ], + "name": "ERC20", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": null, + "documentation": null, + "id": 379, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "allowance", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 375, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 372, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 379, + "src": "195:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 371, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "195:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 374, + "name": "spender", + "nodeType": "VariableDeclaration", + "scope": 379, + "src": "210:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 373, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "210:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "194:32:2" + }, + "payable": false, + "returnParameters": { + "id": 378, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 377, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 379, + "src": "252:7:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 376, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "252:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "251:9:2" + }, + "scope": 408, + "src": "176:85:2", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 390, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transferFrom", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 386, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 381, + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 390, + "src": "287:12:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 380, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "287:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 383, + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 390, + "src": "301:10:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 382, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "301:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 385, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 390, + "src": "313:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 384, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "313:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "286:41:2" + }, + "payable": false, + "returnParameters": { + "id": 389, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 388, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 390, + "src": "348:4:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 387, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "348:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "347:6:2" + }, + "scope": 408, + "src": "265:89:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 399, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "approve", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 395, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 392, + "name": "spender", + "nodeType": "VariableDeclaration", + "scope": 399, + "src": "375:15:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 391, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "375:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 394, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 399, + "src": "392:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 393, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "392:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "374:32:2" + }, + "payable": false, + "returnParameters": { + "id": 398, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 397, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 399, + "src": "423:4:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 396, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "423:4:2", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "422:6:2" + }, + "scope": 408, + "src": "358:71:2", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 407, + "name": "Approval", + "nodeType": "EventDefinition", + "parameters": { + "id": 406, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 401, + "indexed": true, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 407, + "src": "452:21:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 400, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "452:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 403, + "indexed": true, + "name": "spender", + "nodeType": "VariableDeclaration", + "scope": 407, + "src": "479:23:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 402, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "479:7:2", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 405, + "indexed": false, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 407, + "src": "508:13:2", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 404, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "508:7:2", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "446:79:2" + }, + "src": "432:94:2" + } + ], + "scope": 409, + "src": "143:385:2" + } + ], + "src": "0:529:2" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-06-21T22:48:42.346Z" +} \ No newline at end of file diff --git a/build/contracts/ERC20Basic.json b/build/contracts/ERC20Basic.json new file mode 100644 index 0000000..377d0df --- /dev/null +++ b/build/contracts/ERC20Basic.json @@ -0,0 +1,864 @@ +{ + "contractName": "ERC20Basic", + "abi": [ + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "from", + "type": "address" + }, + { + "indexed": true, + "name": "to", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "who", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "to", + "type": "address" + }, + { + "name": "value", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x", + "deployedBytecode": "0x", + "sourceMap": "", + "deployedSourceMap": "", + "source": "pragma solidity 0.4.24;\n\n\n/**\n * @title ERC20Basic\n * @dev Simpler version of ERC20 interface\n * See https://github.com/ethereum/EIPs/issues/179\n */\ncontract ERC20Basic {\n function totalSupply() public view returns (uint256);\n function balanceOf(address who) public view returns (uint256);\n function transfer(address to, uint256 value) public returns (bool);\n event Transfer(address indexed from, address indexed to, uint256 value);\n}\n", + "sourcePath": "/home/rob/Github/computable/contracts/ERC20Basic.sol", + "ast": { + "absolutePath": "/home/rob/Github/computable/contracts/ERC20Basic.sol", + "exportedSymbols": { + "ERC20Basic": [ + 440 + ] + }, + "id": 441, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 410, + "literals": [ + "solidity", + "0.4", + ".24" + ], + "nodeType": "PragmaDirective", + "src": "0:23:3" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\nSee https://github.com/ethereum/EIPs/issues/179", + "fullyImplemented": false, + "id": 440, + "linearizedBaseContracts": [ + 440 + ], + "name": "ERC20Basic", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": null, + "documentation": null, + "id": 415, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "totalSupply", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 411, + "nodeType": "ParameterList", + "parameters": [], + "src": "193:2:3" + }, + "payable": false, + "returnParameters": { + "id": 414, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 413, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 415, + "src": "217:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 412, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "217:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "216:9:3" + }, + "scope": 440, + "src": "173:53:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 422, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "balanceOf", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 418, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 417, + "name": "who", + "nodeType": "VariableDeclaration", + "scope": 422, + "src": "248:11:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 416, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "248:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "247:13:3" + }, + "payable": false, + "returnParameters": { + "id": 421, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 420, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 422, + "src": "282:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 419, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "282:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "281:9:3" + }, + "scope": 440, + "src": "229:62:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 431, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transfer", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 427, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 424, + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 431, + "src": "312:10:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 423, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "312:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 426, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 431, + "src": "324:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 425, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "324:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "311:27:3" + }, + "payable": false, + "returnParameters": { + "id": 430, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 429, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 431, + "src": "355:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 428, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "355:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "354:6:3" + }, + "scope": 440, + "src": "294:67:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 439, + "name": "Transfer", + "nodeType": "EventDefinition", + "parameters": { + "id": 438, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 433, + "indexed": true, + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 439, + "src": "379:20:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 432, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "379:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 435, + "indexed": true, + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 439, + "src": "401:18:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 434, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "401:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 437, + "indexed": false, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 439, + "src": "421:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 436, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "421:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "378:57:3" + }, + "src": "364:72:3" + } + ], + "scope": 441, + "src": "149:289:3" + } + ], + "src": "0:439:3" + }, + "legacyAST": { + "absolutePath": "/home/rob/Github/computable/contracts/ERC20Basic.sol", + "exportedSymbols": { + "ERC20Basic": [ + 440 + ] + }, + "id": 441, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 410, + "literals": [ + "solidity", + "0.4", + ".24" + ], + "nodeType": "PragmaDirective", + "src": "0:23:3" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\nSee https://github.com/ethereum/EIPs/issues/179", + "fullyImplemented": false, + "id": 440, + "linearizedBaseContracts": [ + 440 + ], + "name": "ERC20Basic", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": null, + "documentation": null, + "id": 415, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "totalSupply", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 411, + "nodeType": "ParameterList", + "parameters": [], + "src": "193:2:3" + }, + "payable": false, + "returnParameters": { + "id": 414, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 413, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 415, + "src": "217:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 412, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "217:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "216:9:3" + }, + "scope": 440, + "src": "173:53:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 422, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "balanceOf", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 418, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 417, + "name": "who", + "nodeType": "VariableDeclaration", + "scope": 422, + "src": "248:11:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 416, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "248:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "247:13:3" + }, + "payable": false, + "returnParameters": { + "id": 421, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 420, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 422, + "src": "282:7:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 419, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "282:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "281:9:3" + }, + "scope": 440, + "src": "229:62:3", + "stateMutability": "view", + "superFunction": null, + "visibility": "public" + }, + { + "body": null, + "documentation": null, + "id": 431, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transfer", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 427, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 424, + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 431, + "src": "312:10:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 423, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "312:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 426, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 431, + "src": "324:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 425, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "324:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "311:27:3" + }, + "payable": false, + "returnParameters": { + "id": 430, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 429, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 431, + "src": "355:4:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 428, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "355:4:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "354:6:3" + }, + "scope": 440, + "src": "294:67:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 439, + "name": "Transfer", + "nodeType": "EventDefinition", + "parameters": { + "id": 438, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 433, + "indexed": true, + "name": "from", + "nodeType": "VariableDeclaration", + "scope": 439, + "src": "379:20:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 432, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "379:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 435, + "indexed": true, + "name": "to", + "nodeType": "VariableDeclaration", + "scope": 439, + "src": "401:18:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 434, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "401:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 437, + "indexed": false, + "name": "value", + "nodeType": "VariableDeclaration", + "scope": 439, + "src": "421:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 436, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "421:7:3", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "378:57:3" + }, + "src": "364:72:3" + } + ], + "scope": 441, + "src": "149:289:3" + } + ], + "src": "0:439:3" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-06-21T22:48:42.347Z" +} \ No newline at end of file diff --git a/build/contracts/PLCRVoting.json b/build/contracts/PLCRVoting.json index 589570f..4068e39 100644 --- a/build/contracts/PLCRVoting.json +++ b/build/contracts/PLCRVoting.json @@ -739,74 +739,73 @@ "type": "function" } ], - "bytecode": "0x608060405234801561001057600080fd5b5060405160208061280e8339810180604052810190808051906020019092919050505080600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008081905550506127838061008b6000396000f30060806040526004361061016a576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063053e71a61461016f5780632173a10f146101b05780632c052031146101db57806332ed3d60146102465780633b9302941461029b578063427fa1d2146102f2578063441c77c014610349578063494031831461038e5780636148fed5146103d35780636b2d95d4146104305780636cbf9c5e146104875780637f97e836146104d6578063819b02931461053b57806388d21ff3146105b457806397508f36146105f95780639760356014610624578063a1103f3714610651578063a25236fe146106ba578063a4439dc5146106e7578063aa7ca4641461072c578063b11d8bb814610791578063b43bd069146107d2578063d13820921461083d578063d901402b1461089e578063d9548e5314610907578063e7b1d43c1461094c578063ee68483014610979578063fc0c546a146109be575b600080fd5b34801561017b57600080fd5b5061019a60048036038101908080359060200190929190505050610a15565b6040518082815260200191505060405180910390f35b3480156101bc57600080fd5b506101c5610a76565b6040518082815260200191505060405180910390f35b3480156101e757600080fd5b50610230600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190929190505050610a7b565b6040518082815260200191505060405180910390f35b34801561025257600080fd5b50610285600480360381019080803590602001909291908035906020019092919080359060200190929190505050610cba565b6040518082815260200191505060405180910390f35b3480156102a757600080fd5b506102dc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610dd7565b6040518082815260200191505060405180910390f35b3480156102fe57600080fd5b50610333600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610def565b6040518082815260200191505060405180910390f35b34801561035557600080fd5b5061037460048036038101908080359060200190929190505050610ee7565b604051808215151515815260200191505060405180910390f35b34801561039a57600080fd5b506103b960048036038101908080359060200190929190505050610f36565b604051808215151515815260200191505060405180910390f35b3480156103df57600080fd5b506103fe60048036038101908080359060200190929190505050610fc9565b604051808681526020018581526020018481526020018381526020018281526020019550505050505060405180910390f35b34801561043c57600080fd5b50610471600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fff565b6040518082815260200191505060405180910390f35b34801561049357600080fd5b506104d4600480360381019080803590602001909291908035600019169060200190929190803590602001909291908035906020019092919050505061101a565b005b3480156104e257600080fd5b50610521600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506116f3565b604051808215151515815260200191505060405180910390f35b34801561054757600080fd5b5061059a6004803603810190808035906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611772565b604051808215151515815260200191505060405180910390f35b3480156105c057600080fd5b506105df600480360381019080803590602001909291905050506117b6565b604051808215151515815260200191505060405180910390f35b34801561060557600080fd5b5061060e6117d1565b6040518082815260200191505060405180910390f35b34801561063057600080fd5b5061064f600480360381019080803590602001909291905050506117d7565b005b34801561065d57600080fd5b5061069c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611a0c565b60405180826000191660001916815260200191505060405180910390f35b3480156106c657600080fd5b506106e560048036038101908080359060200190929190505050611a6f565b005b3480156106f357600080fd5b5061071260048036038101908080359060200190929190505050611d52565b604051808215151515815260200191505060405180910390f35b34801561073857600080fd5b50610777600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611d8f565b604051808215151515815260200191505060405180910390f35b34801561079d57600080fd5b506107d0600480360381019080803590602001909291908035906020019092919080359060200190929190505050611e0e565b005b3480156107de57600080fd5b50610827600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190929190505050612164565b6040518082815260200191505060405180910390f35b34801561084957600080fd5b50610888600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061225e565b6040518082815260200191505060405180910390f35b3480156108aa57600080fd5b506108e9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612363565b60405180826000191660001916815260200191505060405180910390f35b34801561091357600080fd5b506109326004803603810190808035906020019092919050505061246b565b604051808215151515815260200191505060405180910390f35b34801561095857600080fd5b5061097760048036038101908080359060200190929190505050612477565b005b34801561098557600080fd5b506109a46004803603810190808035906020019092919050505061268e565b604051808215151515815260200191505060405180910390f35b3480156109ca57600080fd5b506109d36126ca565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000610a208261268e565b1515610a2b57600080fd5b610a3482610f36565b15610a575760016000838152602001908152602001600020600301549050610a71565b600160008381526020019081526020016000206004015490505b919050565b600081565b6000806000610a8986610def565b9150610a95868361225e565b90505b600082141515610cad57610aac868361225e565b90508481111515610bb85783821415610bb057600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6330fe0a0a9091846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b158015610b7257600080fd5b505af4158015610b86573d6000803e3d6000fd5b505050506040513d6020811015610b9c57600080fd5b810190808051906020019092919050505091505b819250610cb1565b600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6330fe0a0a9091846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b158015610c6b57600080fd5b505af4158015610c7f573d6000803e3d6000fd5b505050506040513d6020811015610c9557600080fd5b81019080805190602001909291905050509150610a98565b8192505b50509392505050565b6000806000600160005401600081905550610cde85426126f090919063ffffffff16565b9150610cf384836126f090919063ffffffff16565b905060a060405190810160405280838152602001828152602001878152602001600081526020016000815250600160008054815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030155608082015181600401559050503373ffffffffffffffffffffffffffffffffffffffff166000547f404f1f1c229d9eb2a949e7584da6ffde9d059ef2169f487ca815434cce0640d088858560405180848152602001838152602001828152602001935050505060405180910390a3600054925050509392505050565b60026020528060005260406000206000915090505481565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6330fe0a0a909160006040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b158015610ea557600080fd5b505af4158015610eb9573d6000803e3d6000fd5b505050506040513d6020811015610ecf57600080fd5b81019080805190602001909291905050509050919050565b6000610ef2826117b6565b1515610efd57600080fd5b610f1c600160008481526020019081526020016000206001015461246b565b158015610f2f5750610f2d82611d52565b155b9050919050565b6000610f40612727565b610f498361268e565b1515610f5457600080fd5b6001600084815260200190815260200160002060a060405190810160405290816000820154815260200160018201548152602001600282015481526020016003820154815260200160048201548152505090508060800151816060015101816040015102816060015160640211915050919050565b60016020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154905085565b60006110138261100e84610def565b61225e565b9050919050565b60008061102686611d52565b151561103157600080fd5b83600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561107f57600080fd5b6000861415151561108f57600080fd5b60008314806111885750600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________63366a5ba29091856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561114c57600080fd5b505af4158015611160573d6000803e3d6000fd5b505050506040513d602081101561117657600080fd5b81019080805190602001909291905050505b151561119357600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6307d29ac99091856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561124657600080fd5b505af415801561125a573d6000803e3d6000fd5b505050506040513d602081101561127057600080fd5b81019080805190602001909291905050509150858214611290578161137f565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6307d29ac99091886040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561134357600080fd5b505af4158015611357573d6000803e3d6000fd5b505050506040513d602081101561136d57600080fd5b81019080805190602001909291905050505b915061138d83833387611772565b151561139857600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________639735c51b90918589866040518563ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018085815260200184815260200183815260200182815260200194505050505060006040518083038186803b15801561145b57600080fd5b505af415801561146f573d6000803e3d6000fd5b5050505061147d3387611a0c565b9050600473__AttributeStore________________________63977aa031909183876040518463ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180848152602001836000191660001916815260200180602001838152602001828103825260098152602001807f6e756d546f6b656e73000000000000000000000000000000000000000000000081525060200194505050505060006040518083038186803b15801561153e57600080fd5b505af4158015611552573d6000803e3d6000fd5b50505050600473__AttributeStore________________________63977aa03190918388600190046040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018360001916600019168152602001806020018381526020018281038252600a8152602001807f636f6d6d6974486173680000000000000000000000000000000000000000000081525060200194505050505060006040518083038186803b15801561161957600080fd5b505af415801561162d573d6000803e3d6000fd5b50505050600180600088815260200190815260200160002060050160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff16867fea7979e4280d7e6bffc1c7d83a1ac99f16d02ecc14465ce41016226783b663d7866040518082815260200191505060405180910390a3505050505050565b60006116fe826117b6565b151561170957600080fd5b6001600083815260200190815260200160002060050160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000806000611781858861225e565b8410159150611790858761225e565b8411158061179e5750600086145b90508180156117aa5750805b92505050949350505050565b60008082141580156117ca57506000548211155b9050919050565b60005481565b6117f6600160008381526020019081526020016000206001015461246b565b151561180157600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________63366a5ba29091836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b1580156118b457600080fd5b505af41580156118c8573d6000803e3d6000fd5b505050506040513d60208110156118de57600080fd5b810190808051906020019092919050505015156118fa57600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________636d900ed09091836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060006040518083038186803b1580156119ad57600080fd5b505af41580156119c1573d6000803e3d6000fd5b505050503373ffffffffffffffffffffffffffffffffffffffff16817f402507661c8c8cb90e0a796450b8bdd28b6c516f05279c0cd29e84c344e1699a60405160405180910390a350565b60008282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401828152602001925050506040518091039020905092915050565b80600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015611b2d57600080fd5b505af1158015611b41573d6000803e3d6000fd5b505050506040513d6020811015611b5757600080fd5b810190808051906020019092919050505010151515611b7557600080fd5b80600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015611cbb57600080fd5b505af1158015611ccf573d6000803e3d6000fd5b505050506040513d6020811015611ce557600080fd5b81019080805190602001909291905050501515611d0157600080fd5b3373ffffffffffffffffffffffffffffffffffffffff167ff7aaf024511d9982df8cd0d437c71c30106e6848cd1ba3d288d7a9c0e276aeda826040518082815260200191505060405180910390a250565b6000611d5d826117b6565b1515611d6857600080fd5b611d87600160008481526020019081526020016000206000015461246b565b159050919050565b6000611d9a826117b6565b1515611da557600080fd5b6001600083815260200190815260200160002060060160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000611e1984610ee7565b1515611e2457600080fd5b6001600085815260200190815260200160002060050160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611e9057600080fd5b6001600085815260200190815260200160002060060160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515611efd57600080fd5b611f073385612363565b6000191683836040518083815260200182815260200192505050604051809103902060001916141515611f3957600080fd5b611f43338561225e565b90506001831415611f7757806001600086815260200190815260200160002060030160008282540192505081905550611f9c565b8060016000868152602001908152602001600020600401600082825401925050819055505b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________636d900ed09091866040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060006040518083038186803b15801561204f57600080fd5b505af4158015612063573d6000803e3d6000fd5b50505050600180600086815260200190815260200160002060060160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff1683857ff42c78852433ace4bdcb44f6e80c8daae529e2d999c88cf6bf8f77b1e2890fdd84600160008a815260200190815260200160002060030154600160008b81526020019081526020016000206004015460405180848152602001838152602001828152602001935050505060405180910390a450505050565b6000806000806121738661268e565b151561217e57600080fd5b6001600087815260200190815260200160002060060160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156121ea57600080fd5b6121f386610f36565b6121fe576000612201565b60015b60ff16925082856040518083815260200182815260200192505050604051809103902091506122308787612363565b90508060001916826000191614151561224857600080fd5b612252878761225e565b93505050509392505050565b6000600473__AttributeStore________________________6350389f5c90916122888686611a0c565b6040518363ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180838152602001826000191660001916815260200180602001828103825260098152602001807f6e756d546f6b656e730000000000000000000000000000000000000000000000815250602001935050505060206040518083038186803b15801561232057600080fd5b505af4158015612334573d6000803e3d6000fd5b505050506040513d602081101561234a57600080fd5b8101908080519060200190929190505050905092915050565b6000600473__AttributeStore________________________6350389f5c909161238d8686611a0c565b6040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018260001916600019168152602001806020018281038252600a8152602001807f636f6d6d69744861736800000000000000000000000000000000000000000000815250602001935050505060206040518083038186803b15801561242557600080fd5b505af4158015612439573d6000803e3d6000fd5b505050506040513d602081101561244f57600080fd5b8101908080519060200190929190505050600102905092915050565b60008142119050919050565b60006124d361248533610fff565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461270e90919063ffffffff16565b90508181101515156124e457600080fd5b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156125f657600080fd5b505af115801561260a573d6000803e3d6000fd5b505050506040513d602081101561262057600080fd5b8101908080519060200190929190505050151561263c57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff167ffaeb7dbb9992397d26ea1944efd40c80b40f702faf69b46c67ad10aba68ccb79836040518082815260200191505060405180910390a25050565b6000612699826117b6565b15156126a457600080fd5b6126c3600160008481526020019081526020016000206001015461246b565b9050919050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080828401905083811015151561270457fe5b8091505092915050565b600082821115151561271c57fe5b818303905092915050565b60a060405190810160405280600081526020016000815260200160008152602001600081526020016000815250905600a165627a7a72305820aa57ae7217b7443d866dca2b49bcb0eaffb52382a2478e36ab0913e653d7d1d90029", - "deployedBytecode": "0x60806040526004361061016a576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063053e71a61461016f5780632173a10f146101b05780632c052031146101db57806332ed3d60146102465780633b9302941461029b578063427fa1d2146102f2578063441c77c014610349578063494031831461038e5780636148fed5146103d35780636b2d95d4146104305780636cbf9c5e146104875780637f97e836146104d6578063819b02931461053b57806388d21ff3146105b457806397508f36146105f95780639760356014610624578063a1103f3714610651578063a25236fe146106ba578063a4439dc5146106e7578063aa7ca4641461072c578063b11d8bb814610791578063b43bd069146107d2578063d13820921461083d578063d901402b1461089e578063d9548e5314610907578063e7b1d43c1461094c578063ee68483014610979578063fc0c546a146109be575b600080fd5b34801561017b57600080fd5b5061019a60048036038101908080359060200190929190505050610a15565b6040518082815260200191505060405180910390f35b3480156101bc57600080fd5b506101c5610a76565b6040518082815260200191505060405180910390f35b3480156101e757600080fd5b50610230600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190929190505050610a7b565b6040518082815260200191505060405180910390f35b34801561025257600080fd5b50610285600480360381019080803590602001909291908035906020019092919080359060200190929190505050610cba565b6040518082815260200191505060405180910390f35b3480156102a757600080fd5b506102dc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610dd7565b6040518082815260200191505060405180910390f35b3480156102fe57600080fd5b50610333600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610def565b6040518082815260200191505060405180910390f35b34801561035557600080fd5b5061037460048036038101908080359060200190929190505050610ee7565b604051808215151515815260200191505060405180910390f35b34801561039a57600080fd5b506103b960048036038101908080359060200190929190505050610f36565b604051808215151515815260200191505060405180910390f35b3480156103df57600080fd5b506103fe60048036038101908080359060200190929190505050610fc9565b604051808681526020018581526020018481526020018381526020018281526020019550505050505060405180910390f35b34801561043c57600080fd5b50610471600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fff565b6040518082815260200191505060405180910390f35b34801561049357600080fd5b506104d4600480360381019080803590602001909291908035600019169060200190929190803590602001909291908035906020019092919050505061101a565b005b3480156104e257600080fd5b50610521600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506116f3565b604051808215151515815260200191505060405180910390f35b34801561054757600080fd5b5061059a6004803603810190808035906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611772565b604051808215151515815260200191505060405180910390f35b3480156105c057600080fd5b506105df600480360381019080803590602001909291905050506117b6565b604051808215151515815260200191505060405180910390f35b34801561060557600080fd5b5061060e6117d1565b6040518082815260200191505060405180910390f35b34801561063057600080fd5b5061064f600480360381019080803590602001909291905050506117d7565b005b34801561065d57600080fd5b5061069c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611a0c565b60405180826000191660001916815260200191505060405180910390f35b3480156106c657600080fd5b506106e560048036038101908080359060200190929190505050611a6f565b005b3480156106f357600080fd5b5061071260048036038101908080359060200190929190505050611d52565b604051808215151515815260200191505060405180910390f35b34801561073857600080fd5b50610777600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611d8f565b604051808215151515815260200191505060405180910390f35b34801561079d57600080fd5b506107d0600480360381019080803590602001909291908035906020019092919080359060200190929190505050611e0e565b005b3480156107de57600080fd5b50610827600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190929190505050612164565b6040518082815260200191505060405180910390f35b34801561084957600080fd5b50610888600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061225e565b6040518082815260200191505060405180910390f35b3480156108aa57600080fd5b506108e9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612363565b60405180826000191660001916815260200191505060405180910390f35b34801561091357600080fd5b506109326004803603810190808035906020019092919050505061246b565b604051808215151515815260200191505060405180910390f35b34801561095857600080fd5b5061097760048036038101908080359060200190929190505050612477565b005b34801561098557600080fd5b506109a46004803603810190808035906020019092919050505061268e565b604051808215151515815260200191505060405180910390f35b3480156109ca57600080fd5b506109d36126ca565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000610a208261268e565b1515610a2b57600080fd5b610a3482610f36565b15610a575760016000838152602001908152602001600020600301549050610a71565b600160008381526020019081526020016000206004015490505b919050565b600081565b6000806000610a8986610def565b9150610a95868361225e565b90505b600082141515610cad57610aac868361225e565b90508481111515610bb85783821415610bb057600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6330fe0a0a9091846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b158015610b7257600080fd5b505af4158015610b86573d6000803e3d6000fd5b505050506040513d6020811015610b9c57600080fd5b810190808051906020019092919050505091505b819250610cb1565b600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6330fe0a0a9091846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b158015610c6b57600080fd5b505af4158015610c7f573d6000803e3d6000fd5b505050506040513d6020811015610c9557600080fd5b81019080805190602001909291905050509150610a98565b8192505b50509392505050565b6000806000600160005401600081905550610cde85426126f090919063ffffffff16565b9150610cf384836126f090919063ffffffff16565b905060a060405190810160405280838152602001828152602001878152602001600081526020016000815250600160008054815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030155608082015181600401559050503373ffffffffffffffffffffffffffffffffffffffff166000547f404f1f1c229d9eb2a949e7584da6ffde9d059ef2169f487ca815434cce0640d088858560405180848152602001838152602001828152602001935050505060405180910390a3600054925050509392505050565b60026020528060005260406000206000915090505481565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6330fe0a0a909160006040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b158015610ea557600080fd5b505af4158015610eb9573d6000803e3d6000fd5b505050506040513d6020811015610ecf57600080fd5b81019080805190602001909291905050509050919050565b6000610ef2826117b6565b1515610efd57600080fd5b610f1c600160008481526020019081526020016000206001015461246b565b158015610f2f5750610f2d82611d52565b155b9050919050565b6000610f40612727565b610f498361268e565b1515610f5457600080fd5b6001600084815260200190815260200160002060a060405190810160405290816000820154815260200160018201548152602001600282015481526020016003820154815260200160048201548152505090508060800151816060015101816040015102816060015160640211915050919050565b60016020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154905085565b60006110138261100e84610def565b61225e565b9050919050565b60008061102686611d52565b151561103157600080fd5b83600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561107f57600080fd5b6000861415151561108f57600080fd5b60008314806111885750600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________63366a5ba29091856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561114c57600080fd5b505af4158015611160573d6000803e3d6000fd5b505050506040513d602081101561117657600080fd5b81019080805190602001909291905050505b151561119357600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6307d29ac99091856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561124657600080fd5b505af415801561125a573d6000803e3d6000fd5b505050506040513d602081101561127057600080fd5b81019080805190602001909291905050509150858214611290578161137f565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6307d29ac99091886040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561134357600080fd5b505af4158015611357573d6000803e3d6000fd5b505050506040513d602081101561136d57600080fd5b81019080805190602001909291905050505b915061138d83833387611772565b151561139857600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________639735c51b90918589866040518563ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018085815260200184815260200183815260200182815260200194505050505060006040518083038186803b15801561145b57600080fd5b505af415801561146f573d6000803e3d6000fd5b5050505061147d3387611a0c565b9050600473__AttributeStore________________________63977aa031909183876040518463ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180848152602001836000191660001916815260200180602001838152602001828103825260098152602001807f6e756d546f6b656e73000000000000000000000000000000000000000000000081525060200194505050505060006040518083038186803b15801561153e57600080fd5b505af4158015611552573d6000803e3d6000fd5b50505050600473__AttributeStore________________________63977aa03190918388600190046040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018360001916600019168152602001806020018381526020018281038252600a8152602001807f636f6d6d6974486173680000000000000000000000000000000000000000000081525060200194505050505060006040518083038186803b15801561161957600080fd5b505af415801561162d573d6000803e3d6000fd5b50505050600180600088815260200190815260200160002060050160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff16867fea7979e4280d7e6bffc1c7d83a1ac99f16d02ecc14465ce41016226783b663d7866040518082815260200191505060405180910390a3505050505050565b60006116fe826117b6565b151561170957600080fd5b6001600083815260200190815260200160002060050160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000806000611781858861225e565b8410159150611790858761225e565b8411158061179e5750600086145b90508180156117aa5750805b92505050949350505050565b60008082141580156117ca57506000548211155b9050919050565b60005481565b6117f6600160008381526020019081526020016000206001015461246b565b151561180157600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________63366a5ba29091836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b1580156118b457600080fd5b505af41580156118c8573d6000803e3d6000fd5b505050506040513d60208110156118de57600080fd5b810190808051906020019092919050505015156118fa57600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________636d900ed09091836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060006040518083038186803b1580156119ad57600080fd5b505af41580156119c1573d6000803e3d6000fd5b505050503373ffffffffffffffffffffffffffffffffffffffff16817f402507661c8c8cb90e0a796450b8bdd28b6c516f05279c0cd29e84c344e1699a60405160405180910390a350565b60008282604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401828152602001925050506040518091039020905092915050565b80600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015611b2d57600080fd5b505af1158015611b41573d6000803e3d6000fd5b505050506040513d6020811015611b5757600080fd5b810190808051906020019092919050505010151515611b7557600080fd5b80600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015611cbb57600080fd5b505af1158015611ccf573d6000803e3d6000fd5b505050506040513d6020811015611ce557600080fd5b81019080805190602001909291905050501515611d0157600080fd5b3373ffffffffffffffffffffffffffffffffffffffff167ff7aaf024511d9982df8cd0d437c71c30106e6848cd1ba3d288d7a9c0e276aeda826040518082815260200191505060405180910390a250565b6000611d5d826117b6565b1515611d6857600080fd5b611d87600160008481526020019081526020016000206000015461246b565b159050919050565b6000611d9a826117b6565b1515611da557600080fd5b6001600083815260200190815260200160002060060160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000611e1984610ee7565b1515611e2457600080fd5b6001600085815260200190815260200160002060050160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611e9057600080fd5b6001600085815260200190815260200160002060060160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515611efd57600080fd5b611f073385612363565b6000191683836040518083815260200182815260200192505050604051809103902060001916141515611f3957600080fd5b611f43338561225e565b90506001831415611f7757806001600086815260200190815260200160002060030160008282540192505081905550611f9c565b8060016000868152602001908152602001600020600401600082825401925050819055505b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________636d900ed09091866040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060006040518083038186803b15801561204f57600080fd5b505af4158015612063573d6000803e3d6000fd5b50505050600180600086815260200190815260200160002060060160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff1683857ff42c78852433ace4bdcb44f6e80c8daae529e2d999c88cf6bf8f77b1e2890fdd84600160008a815260200190815260200160002060030154600160008b81526020019081526020016000206004015460405180848152602001838152602001828152602001935050505060405180910390a450505050565b6000806000806121738661268e565b151561217e57600080fd5b6001600087815260200190815260200160002060060160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156121ea57600080fd5b6121f386610f36565b6121fe576000612201565b60015b60ff16925082856040518083815260200182815260200192505050604051809103902091506122308787612363565b90508060001916826000191614151561224857600080fd5b612252878761225e565b93505050509392505050565b6000600473__AttributeStore________________________6350389f5c90916122888686611a0c565b6040518363ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180838152602001826000191660001916815260200180602001828103825260098152602001807f6e756d546f6b656e730000000000000000000000000000000000000000000000815250602001935050505060206040518083038186803b15801561232057600080fd5b505af4158015612334573d6000803e3d6000fd5b505050506040513d602081101561234a57600080fd5b8101908080519060200190929190505050905092915050565b6000600473__AttributeStore________________________6350389f5c909161238d8686611a0c565b6040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018260001916600019168152602001806020018281038252600a8152602001807f636f6d6d69744861736800000000000000000000000000000000000000000000815250602001935050505060206040518083038186803b15801561242557600080fd5b505af4158015612439573d6000803e3d6000fd5b505050506040513d602081101561244f57600080fd5b8101908080519060200190929190505050600102905092915050565b60008142119050919050565b60006124d361248533610fff565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461270e90919063ffffffff16565b90508181101515156124e457600080fd5b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156125f657600080fd5b505af115801561260a573d6000803e3d6000fd5b505050506040513d602081101561262057600080fd5b8101908080519060200190929190505050151561263c57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff167ffaeb7dbb9992397d26ea1944efd40c80b40f702faf69b46c67ad10aba68ccb79836040518082815260200191505060405180910390a25050565b6000612699826117b6565b15156126a457600080fd5b6126c3600160008481526020019081526020016000206001015461246b565b9050919050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080828401905083811015151561270457fe5b8091505092915050565b600082821115151561271c57fe5b818303905092915050565b60a060405190810160405280600081526020016000815260200160008152602001600081526020016000815250905600a165627a7a72305820aa57ae7217b7443d866dca2b49bcb0eaffb52382a2478e36ab0913e653d7d1d90029", - "sourceMap": "292:17800:5:-;;;2436:138;8:9:-1;5:2;;;30:1;27;20:12;5:2;2436:138:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2516:10;2493:5;;:34;;;;;;;;;;;;;;;;;;1841:1;2537:9;:30;;;;2436:138;292:17800;;;;;;", - "deployedSourceMap": "292:17800:5:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10975:288;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10975:288:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1799:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1799:43:5;;;;;;;;;;;;;;;;;;;;;;;16151:1117;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16151:1117:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9561:623;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9561:623:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1948:48;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1948:48:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14981:124;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14981:124:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12341:217;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12341:217:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10403:256;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10403:256:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1876:36;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1876:36:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15294:147;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15294:147:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4814:1194;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4814:1194:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12814:187;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12814:187:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6514:399;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6514:399:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13637:134;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13637:134:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1848:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1848:21:5;;;;;;;;;;;;;;;;;;;;;;;3972:257;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3972:257:5;;;;;;;;;;;;;;;;;;;;;;;;;;17959:131;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17959:131:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2937:295;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2937:295:5;;;;;;;;;;;;;;;;;;;;;;;;;;11925:185;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11925:185:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13255:186;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13255:186:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7275:1138;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7275:1138:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8639:483;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8639:483:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14596:175;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14596:175:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14134:190;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14134:190:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17586:141;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17586:141:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3440:370;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3440:370:5;;;;;;;;;;;;;;;;;;;;;;;;;;11449:174;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11449:174:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2120:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2120:27:5;;;;;;;;;;;;;;;;;;;;;;;;;;;10975:288;11062:14;11096:18;11106:7;11096:9;:18::i;:::-;11088:27;;;;;;;;11130:17;11139:7;11130:8;:17::i;:::-;11126:130;;;11168:7;:16;11176:7;11168:16;;;;;;;;;;;:25;;;11161:32;;;;11126:130;11227:7;:16;11235:7;11227:16;;;;;;;;;;;:29;;;11220:36;;10975:288;;;;:::o;1799:43::-;1841:1;1799:43;:::o;16151:1117::-;16263:13;16363:11;16404:17;16377:19;16389:6;16377:11;:19::i;:::-;16363:33;;16424:28;16437:6;16445;16424:12;:28::i;:::-;16404:48;;16534:610;16550:1;16540:6;:11;;16534:610;;;16634:28;16647:6;16655;16634:12;:28::i;:::-;16619:43;;16691:10;16675:12;:26;;16672:324;;;16758:7;16748:6;:17;16745:178;;;16880:6;:14;16887:6;16880:14;;;;;;;;;;;;;;;:22;;;;16903:6;16880:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16880:30:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16880:30:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16880:30:5;;;;;;;;;;;;;;;;16871:39;;16745:178;16978:6;16971:13;;;;16672:324;17105:6;:14;17112:6;17105:14;;;;;;;;;;;;;;;:22;;;;17128:6;17105:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17105:30:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17105:30:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;17105:30:5;;;;;;;;;;;;;;;;17096:39;;16534:610;;;17255:6;17248:13;;16151:1117;;;;;;;;:::o;9561:623::-;9658:11;9717:18;9784;9705:1;9693:9;;:13;9681:9;:25;;;;9738:36;9758:15;9738;:19;;:36;;;;:::i;:::-;9717:57;;9805:34;9823:15;9805:13;:17;;:34;;;;:::i;:::-;9784:55;;9871:191;;;;;;;;;9942:13;9871:191;;;;9984:13;9871:191;;;;9902:11;9871:191;;;;10021:1;9871:191;;;;10050:1;9871:191;;;9850:7;:18;9858:9;;9850:18;;;;;;;;;;;:212;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10140:10;10073:78;;10129:9;;10073:78;10086:11;10099:13;10114;10073:78;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10168:9;;10161:16;;9561:623;;;;;;;:::o;1948:48::-;;;;;;;;;;;;;;;;;:::o;14981:124::-;15043:11;15073:6;:14;15080:6;15073:14;;;;;;;;;;;;;;;:22;;;;15096:1;15073:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15073:25:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15073:25:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15073:25:5;;;;;;;;;;;;;;;;15066:32;;14981:124;;;:::o;12341:217::-;12408:11;12439:19;12450:7;12439:10;:19::i;:::-;12431:28;;;;;;;;12478:41;12488:7;:16;12496:7;12488:16;;;;;;;;;;;:30;;;12478:9;:41::i;:::-;12477:42;:74;;;;;12524:27;12543:7;12524:18;:27::i;:::-;12523:28;12477:74;12470:81;;12341:217;;;:::o;10403:256::-;10460:11;10521:16;;:::i;:::-;10491:18;10501:7;10491:9;:18::i;:::-;10483:27;;;;;;;;10540:7;:16;10548:7;10540:16;;;;;;;;;;;10521:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10633:4;:17;;;10617:4;:13;;;:33;10598:4;:15;;;:53;10580:4;:13;;;10574:3;:19;10573:79;10566:86;;10403:256;;;;:::o;1876:36::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;15294:147::-;15360:14;15393:41;15406:6;15414:19;15426:6;15414:11;:19::i;:::-;15393:12;:41::i;:::-;15386:48;;15294:147;;;:::o;4814:1194::-;5328:15;5717:12;4931:27;4950:7;4931:18;:27::i;:::-;4923:36;;;;;;;;5009:10;4977:16;:28;4994:10;4977:28;;;;;;;;;;;;;;;;:42;;4969:51;;;;;;;;5083:1;5072:7;:12;;5064:21;;;;;;;;5271:1;5256:11;:16;:60;;;;5276:6;:18;5283:10;5276:18;;;;;;;;;;;;;;;:27;;;;5304:11;5276:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5276:40:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5276:40:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5276:40:5;;;;;;;;;;;;;;;;5256:60;5248:69;;;;;;;;5346:6;:18;5353:10;5346:18;;;;;;;;;;;;;;;:26;;;;5373:11;5346:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5346:39:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5346:39:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5346:39:5;;;;;;;;;;;;;;;;5328:57;;5496:7;5482:10;:21;5481:74;;5545:10;5481:74;;;5507:6;:18;5514:10;5507:18;;;;;;;;;;;;;;;:26;;;;5534:7;5507:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5507:35:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5507:35:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5507:35:5;;;;;;;;;;;;;;;;5481:74;5468:87;;5574:62;5588:11;5601:10;5613;5625;5574:13;:62::i;:::-;5566:71;;;;;;;;5647:6;:18;5654:10;5647:18;;;;;;;;;;;;;;;:25;;;;5673:11;5686:7;5695:10;5647:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5647:59:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5647:59:5;;;;5732:29;5741:10;5753:7;5732:8;:29::i;:::-;5717:44;;5772:5;:18;;;;5791:4;5810:10;5772:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5772:49:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5772:49:5;;;;5831:5;:18;;;;5850:4;5875:11;5870:17;;;5831:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5831:57:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5831:57:5;;;;5940:4;5899:7;:16;5907:7;5899:16;;;;;;;;;;;:26;;:38;5926:10;5899:38;;;;;;;;;;;;;;;;:45;;;;;;;;;;;;;;;;;;5990:10;5954:47;;5969:7;5954:47;5978:10;5954:47;;;;;;;;;;;;;;;;;;4814:1194;;;;;;:::o;12814:187::-;12888:14;12922:19;12933:7;12922:10;:19::i;:::-;12914:28;;;;;;;;12960:7;:16;12968:7;12960:16;;;;;;;;;;;:26;;:34;12987:6;12960:34;;;;;;;;;;;;;;;;;;;;;;;;;12953:41;;12814:187;;;;:::o;6514:399::-;6623:10;6645:14;6789;6677:29;6690:6;6698:7;6677:12;:29::i;:::-;6663:10;:43;;6645:62;;6821:29;6834:6;6842:7;6821:12;:29::i;:::-;6807:10;:43;;:59;;;;6865:1;6854:7;:12;6807:59;6789:78;;6884:9;:22;;;;;6897:9;6884:22;6877:29;;6514:399;;;;;;;;:::o;13637:134::-;13696:11;13738:1;13727:7;:12;;:36;;;;;13754:9;;13743:7;:20;;13727:36;13719:45;;13637:134;;;:::o;1848:21::-;;;;:::o;3972:257::-;4035:41;4045:7;:16;4053:7;4045:16;;;;;;;;;;;:30;;;4035:9;:41::i;:::-;4027:50;;;;;;;;4095:6;:18;4102:10;4095:18;;;;;;;;;;;;;;;:27;;;;4123:7;4095:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4095:36:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4095:36:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4095:36:5;;;;;;;;;;;;;;;;4087:45;;;;;;;;4143:6;:18;4150:10;4143:18;;;;;;;;;;;;;;;:25;;;;4169:7;4143:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4143:34:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4143:34:5;;;;4211:10;4187:35;;4202:7;4187:35;;;;;;;;;;3972:257;:::o;17959:131::-;18027:12;18068:5;18075:7;18058:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18051:32;;17959:131;;;;:::o;2937:295::-;3041:10;3010:5;;;;;;;;;;;:15;;;3026:10;3010:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3010:27:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3010:27:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3010:27:5;;;;;;;;;;;;;;;;:41;;3002:50;;;;;;;;3094:10;3062:16;:28;3079:10;3062:28;;;;;;;;;;;;;;;;:42;;;;;;;;;;;3122:5;;;;;;;;;;;:18;;;3141:10;3153:4;3159:10;3122:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3122:48:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3122:48:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3122:48:5;;;;;;;;;;;;;;;;3114:57;;;;;;;;3214:10;3181:44;;;3202:10;3181:44;;;;;;;;;;;;;;;;;;2937:295;:::o;11925:185::-;11992:11;12023:19;12034:7;12023:10;:19::i;:::-;12015:28;;;;;;;;12062:41;12072:7;:16;12080:7;12072:16;;;;;;;;;;;:30;;;12062:9;:41::i;:::-;12061:42;12054:49;;11925:185;;;:::o;13255:186::-;13329:13;13362:19;13373:7;13362:10;:19::i;:::-;13354:28;;;;;;;;13400:7;:16;13408:7;13400:16;;;;;;;;;;;:26;;:34;13427:6;13400:34;;;;;;;;;;;;;;;;;;;;;;;;;13393:41;;13255:186;;;;:::o;7275:1138::-;7862:14;7415:27;7434:7;7415:18;:27::i;:::-;7407:36;;;;;;;;7461:7;:16;7469:7;7461:16;;;;;;;;;;;:26;;:38;7488:10;7461:38;;;;;;;;;;;;;;;;;;;;;;;;;7453:47;;;;;;;;7596:7;:16;7604:7;7596:16;;;;;;;;;;;:26;;:38;7623:10;7596:38;;;;;;;;;;;;;;;;;;;;;;;;;7595:39;7587:48;;;;;;;;7755:34;7769:10;7781:7;7755:13;:34::i;:::-;7722:67;;;7732:11;7745:5;7722:29;;;;;;;;;;;;;;;;;;;;;;;;:67;;;;7714:76;;;;;;;;7879:33;7892:10;7904:7;7879:12;:33::i;:::-;7862:50;;7942:1;7927:11;:16;7923:203;;;8033:9;8004:7;:16;8012:7;8004:16;;;;;;;;;;;:25;;;:38;;;;;;;;;;;7923:203;;;8106:9;8073:7;:16;8081:7;8073:16;;;;;;;;;;;:29;;;:42;;;;;;;;;;;7923:203;8136:6;:18;8143:10;8136:18;;;;;;;;;;;;;;;:25;;;;8162:7;8136:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8136:34:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8136:34:5;;;;8275:4;8234:7;:16;8242:7;8234:16;;;;;;;;;;;:26;;:38;8261:10;8234:38;;;;;;;;;;;;;;;;:45;;;;;;;;;;;;;;;;;;8395:10;8290:116;;8382:11;8304:7;8290:116;8313:9;8324:7;:16;8332:7;8324:16;;;;;;;;;;;:25;;;8351:7;:16;8359:7;8351:16;;;;;;;;;;;:29;;;8290:116;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7275:1138;;;;:::o;8639:483::-;8735:17;8855:18;8911;8973;8772;8782:7;8772:9;:18::i;:::-;8764:27;;;;;;;;8809:7;:16;8817:7;8809:16;;;;;;;;;;;:26;;:34;8836:6;8809:34;;;;;;;;;;;;;;;;;;;;;;;;;8801:43;;;;;;;;8876:17;8885:7;8876:8;:17::i;:::-;:25;;8900:1;8876:25;;;8896:1;8876:25;8855:46;;;;8942:13;8957:5;8932:31;;;;;;;;;;;;;;;;;;;;;;;;8911:52;;8994:30;9008:6;9016:7;8994:13;:30::i;:::-;8973:51;;9057:10;9043:24;;;:10;:24;;;;9035:33;;;;;;;;9086:29;9099:6;9107:7;9086:12;:29::i;:::-;9079:36;;8639:483;;;;;;;;:::o;14596:175::-;14673:14;14706:5;:18;;;;14725:25;14734:6;14742:7;14725:8;:25::i;:::-;14706:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14706:58:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14706:58:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14706:58:5;;;;;;;;;;;;;;;;14699:65;;14596:175;;;;:::o;14134:190::-;14212:18;14257:5;:18;;;;14276:25;14285:6;14293:7;14276:8;:25::i;:::-;14257:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14257:59:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14257:59:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14257:59:5;;;;;;;;;;;;;;;;14249:68;;14242:75;;14134:190;;;;:::o;17586:141::-;17653:12;17703:16;17685:15;:34;17677:43;;17586:141;;;:::o;3440:370::-;3506:20;3529:61;3562:27;3578:10;3562:15;:27::i;:::-;3529:16;:28;3546:10;3529:28;;;;;;;;;;;;;;;;:32;;:61;;;;:::i;:::-;3506:84;;3627:10;3608:15;:29;;3600:38;;;;;;;;3680:10;3648:16;:28;3665:10;3648:28;;;;;;;;;;;;;;;;:42;;;;;;;;;;;3708:5;;;;;;;;;;;:14;;;3723:10;3735;3708:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3708:38:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3708:38:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3708:38:5;;;;;;;;;;;;;;;;3700:47;;;;;;;;3792:10;3757:46;;;3780:10;3757:46;;;;;;;;;;;;;;;;;;3440:370;;:::o;11449:174::-;11507:10;11537:19;11548:7;11537:10;:19::i;:::-;11529:28;;;;;;;;11575:41;11585:7;:16;11593:7;11585:16;;;;;;;;;;;:30;;;11575:9;:41::i;:::-;11568:48;;11449:174;;;:::o;2120:27::-;;;;;;;;;;;;;:::o;680:133:8:-;742:7;757:9;773:1;769;:5;757:17;;792:1;787;:6;;780:14;;;;;;807:1;800:8;;680:133;;;;;:::o;562:114::-;624:7;651:1;646;:6;;639:14;;;;;;670:1;666;:5;659:12;;562:114;;;;:::o;292:17800:5:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", - "source": "pragma solidity ^0.4.8;\nimport \"tokens/eip20/EIP20Interface.sol\";\nimport \"dll/DLL.sol\";\nimport \"attrstore/AttributeStore.sol\";\nimport \"zeppelin/math/SafeMath.sol\";\n\n/**\n@title Partial-Lock-Commit-Reveal Voting scheme with ERC20 tokens\n@author Team: Aspyn Palatnick, Cem Ozer, Yorke Rhodes\n*/\ncontract PLCRVoting {\n\n // ============\n // EVENTS:\n // ============\n\n event _VoteCommitted(uint indexed pollID, uint numTokens, address indexed voter);\n event _VoteRevealed(uint indexed pollID, uint numTokens, uint votesFor, uint votesAgainst, uint indexed choice, address indexed voter);\n event _PollCreated(uint voteQuorum, uint commitEndDate, uint revealEndDate, uint indexed pollID, address indexed creator);\n event _VotingRightsGranted(uint numTokens, address indexed voter);\n event _VotingRightsWithdrawn(uint numTokens, address indexed voter);\n event _TokensRescued(uint indexed pollID, address indexed voter);\n\n // ============\n // DATA STRUCTURES:\n // ============\n\n using AttributeStore for AttributeStore.Data;\n using DLL for DLL.Data;\n using SafeMath for uint;\n\n struct Poll {\n uint commitEndDate; /// expiration date of commit period for poll\n uint revealEndDate; /// expiration date of reveal period for poll\n uint voteQuorum;\t /// number of votes required for a proposal to pass\n uint votesFor;\t\t /// tally of votes supporting proposal\n uint votesAgainst; /// tally of votes countering proposal\n mapping(address => bool) didCommit; /// indicates whether an address committed a vote for this poll\n mapping(address => bool) didReveal; /// indicates whether an address revealed a vote for this poll\n }\n\n // ============\n // STATE VARIABLES:\n // ============\n\n uint constant public INITIAL_POLL_NONCE = 0;\n uint public pollNonce;\n\n mapping(uint => Poll) public pollMap; // maps pollID to Poll struct\n mapping(address => uint) public voteTokenBalance; // maps user's address to voteToken balance\n\n mapping(address => DLL.Data) dllMap;\n AttributeStore.Data store;\n\n EIP20Interface public token;\n\n // ============\n // CONSTRUCTOR:\n // ============\n\n /**\n @dev Initializes voteQuorum, commitDuration, revealDuration, and pollNonce in addition to token contract and trusted mapping\n @param _tokenAddr The address where the ERC20 token contract is deployed\n */\n function PLCRVoting(address _tokenAddr) public {\n token = EIP20Interface(_tokenAddr);\n pollNonce = INITIAL_POLL_NONCE;\n }\n\n // ================\n // TOKEN INTERFACE:\n // ================\n\n /**\n @notice Loads _numTokens ERC20 tokens into the voting contract for one-to-one voting rights\n @dev Assumes that msg.sender has approved voting contract to spend on their behalf\n @param _numTokens The number of votingTokens desired in exchange for ERC20 tokens\n */\n function requestVotingRights(uint _numTokens) external {\n require(token.balanceOf(msg.sender) >= _numTokens);\n voteTokenBalance[msg.sender] += _numTokens;\n require(token.transferFrom(msg.sender, this, _numTokens));\n _VotingRightsGranted(_numTokens, msg.sender);\n }\n\n /**\n @notice Withdraw _numTokens ERC20 tokens from the voting contract, revoking these voting rights\n @param _numTokens The number of ERC20 tokens desired in exchange for voting rights\n */\n function withdrawVotingRights(uint _numTokens) external {\n uint availableTokens = voteTokenBalance[msg.sender].sub(getLockedTokens(msg.sender));\n require(availableTokens >= _numTokens);\n voteTokenBalance[msg.sender] -= _numTokens;\n require(token.transfer(msg.sender, _numTokens));\n _VotingRightsWithdrawn(_numTokens, msg.sender);\n }\n\n /**\n @dev Unlocks tokens locked in unrevealed vote where poll has ended\n @param _pollID Integer identifier associated with the target poll\n */\n function rescueTokens(uint _pollID) external {\n require(isExpired(pollMap[_pollID].revealEndDate));\n require(dllMap[msg.sender].contains(_pollID));\n\n dllMap[msg.sender].remove(_pollID);\n _TokensRescued(_pollID, msg.sender);\n }\n\n // =================\n // VOTING INTERFACE:\n // =================\n\n /**\n @notice Commits vote using hash of choice and secret salt to conceal vote until reveal\n @param _pollID Integer identifier associated with target poll\n @param _secretHash Commit keccak256 hash of voter's choice and salt (tightly packed in this order)\n @param _numTokens The number of tokens to be committed towards the target poll\n @param _prevPollID The ID of the poll that the user has voted the maximum number of tokens in which is still less than or equal to numTokens\n */\n function commitVote(uint _pollID, bytes32 _secretHash, uint _numTokens, uint _prevPollID) external {\n require(commitPeriodActive(_pollID));\n require(voteTokenBalance[msg.sender] >= _numTokens); // prevent user from overspending\n require(_pollID != 0); // prevent user from committing to zero node placeholder\n\n // Check if _prevPollID exists in the user's DLL or if _prevPollID is 0\n require(_prevPollID == 0 || dllMap[msg.sender].contains(_prevPollID));\n\n uint nextPollID = dllMap[msg.sender].getNext(_prevPollID);\n\n // if nextPollID is equal to _pollID, _pollID is being updated,\n nextPollID = (nextPollID == _pollID) ? dllMap[msg.sender].getNext(_pollID) : nextPollID;\n\n require(validPosition(_prevPollID, nextPollID, msg.sender, _numTokens));\n dllMap[msg.sender].insert(_prevPollID, _pollID, nextPollID);\n\n bytes32 UUID = attrUUID(msg.sender, _pollID);\n\n store.setAttribute(UUID, \"numTokens\", _numTokens);\n store.setAttribute(UUID, \"commitHash\", uint(_secretHash));\n\n pollMap[_pollID].didCommit[msg.sender] = true;\n _VoteCommitted(_pollID, _numTokens, msg.sender);\n }\n\n /**\n @dev Compares previous and next poll's committed tokens for sorting purposes\n @param _prevID Integer identifier associated with previous poll in sorted order\n @param _nextID Integer identifier associated with next poll in sorted order\n @param _voter Address of user to check DLL position for\n @param _numTokens The number of tokens to be committed towards the poll (used for sorting)\n @return valid Boolean indication of if the specified position maintains the sort\n */\n function validPosition(uint _prevID, uint _nextID, address _voter, uint _numTokens) public constant returns (bool valid) {\n bool prevValid = (_numTokens >= getNumTokens(_voter, _prevID));\n // if next is zero node, _numTokens does not need to be greater\n bool nextValid = (_numTokens <= getNumTokens(_voter, _nextID) || _nextID == 0);\n return prevValid && nextValid;\n }\n\n /**\n @notice Reveals vote with choice and secret salt used in generating commitHash to attribute committed tokens\n @param _pollID Integer identifier associated with target poll\n @param _voteOption Vote choice used to generate commitHash for associated poll\n @param _salt Secret number used to generate commitHash for associated poll\n */\n function revealVote(uint _pollID, uint _voteOption, uint _salt) external {\n // Make sure the reveal period is active\n require(revealPeriodActive(_pollID));\n require(pollMap[_pollID].didCommit[msg.sender]); // make sure user has committed a vote for this poll\n require(!pollMap[_pollID].didReveal[msg.sender]); // prevent user from revealing multiple times\n require(keccak256(_voteOption, _salt) == getCommitHash(msg.sender, _pollID)); // compare resultant hash from inputs to original commitHash\n\n uint numTokens = getNumTokens(msg.sender, _pollID);\n\n if (_voteOption == 1) {// apply numTokens to appropriate poll choice\n pollMap[_pollID].votesFor += numTokens;\n } else {\n pollMap[_pollID].votesAgainst += numTokens;\n }\n\n dllMap[msg.sender].remove(_pollID); // remove the node referring to this vote upon reveal\n pollMap[_pollID].didReveal[msg.sender] = true;\n\n _VoteRevealed(_pollID, numTokens, pollMap[_pollID].votesFor, pollMap[_pollID].votesAgainst, _voteOption, msg.sender);\n }\n\n /**\n @param _pollID Integer identifier associated with target poll\n @param _salt Arbitrarily chosen integer used to generate secretHash\n @return correctVotes Number of tokens voted for winning option\n */\n function getNumPassingTokens(address _voter, uint _pollID, uint _salt) public constant returns (uint correctVotes) {\n require(pollEnded(_pollID));\n require(pollMap[_pollID].didReveal[_voter]);\n\n uint winningChoice = isPassed(_pollID) ? 1 : 0;\n bytes32 winnerHash = keccak256(winningChoice, _salt);\n bytes32 commitHash = getCommitHash(_voter, _pollID);\n\n require(winnerHash == commitHash);\n\n return getNumTokens(_voter, _pollID);\n }\n\n // ==================\n // POLLING INTERFACE:\n // ==================\n\n /**\n @dev Initiates a poll with canonical configured parameters at pollID emitted by PollCreated event\n @param _voteQuorum Type of majority (out of 100) that is necessary for poll to be successful\n @param _commitDuration Length of desired commit period in seconds\n @param _revealDuration Length of desired reveal period in seconds\n */\n function startPoll(uint _voteQuorum, uint _commitDuration, uint _revealDuration) public returns (uint pollID) {\n pollNonce = pollNonce + 1;\n\n uint commitEndDate = block.timestamp.add(_commitDuration);\n uint revealEndDate = commitEndDate.add(_revealDuration);\n\n pollMap[pollNonce] = Poll({\n voteQuorum: _voteQuorum,\n commitEndDate: commitEndDate,\n revealEndDate: revealEndDate,\n votesFor: 0,\n votesAgainst: 0\n });\n\n _PollCreated(_voteQuorum, commitEndDate, revealEndDate, pollNonce, msg.sender);\n return pollNonce;\n }\n\n /**\n @notice Determines if proposal has passed\n @dev Check if votesFor out of totalVotes exceeds votesQuorum (requires pollEnded)\n @param _pollID Integer identifier associated with target poll\n */\n function isPassed(uint _pollID) constant public returns (bool passed) {\n require(pollEnded(_pollID));\n\n Poll memory poll = pollMap[_pollID];\n return (100 * poll.votesFor) > (poll.voteQuorum * (poll.votesFor + poll.votesAgainst));\n }\n\n // ----------------\n // POLLING HELPERS:\n // ----------------\n\n /**\n @dev Gets the total winning votes for reward distribution purposes\n @param _pollID Integer identifier associated with target poll\n @return Total number of votes committed to the winning option for specified poll\n */\n function getTotalNumberOfTokensForWinningOption(uint _pollID) constant public returns (uint numTokens) {\n require(pollEnded(_pollID));\n\n if (isPassed(_pollID))\n return pollMap[_pollID].votesFor;\n else\n return pollMap[_pollID].votesAgainst;\n }\n\n /**\n @notice Determines if poll is over\n @dev Checks isExpired for specified poll's revealEndDate\n @return Boolean indication of whether polling period is over\n */\n function pollEnded(uint _pollID) constant public returns (bool ended) {\n require(pollExists(_pollID));\n\n return isExpired(pollMap[_pollID].revealEndDate);\n }\n\n /**\n @notice Checks if the commit period is still active for the specified poll\n @dev Checks isExpired for the specified poll's commitEndDate\n @param _pollID Integer identifier associated with target poll\n @return Boolean indication of isCommitPeriodActive for target poll\n */\n function commitPeriodActive(uint _pollID) constant public returns (bool active) {\n require(pollExists(_pollID));\n\n return !isExpired(pollMap[_pollID].commitEndDate);\n }\n\n /**\n @notice Checks if the reveal period is still active for the specified poll\n @dev Checks isExpired for the specified poll's revealEndDate\n @param _pollID Integer identifier associated with target poll\n */\n function revealPeriodActive(uint _pollID) constant public returns (bool active) {\n require(pollExists(_pollID));\n\n return !isExpired(pollMap[_pollID].revealEndDate) && !commitPeriodActive(_pollID);\n }\n\n /**\n @dev Checks if user has committed for specified poll\n @param _voter Address of user to check against\n @param _pollID Integer identifier associated with target poll\n @return Boolean indication of whether user has committed\n */\n function didCommit(address _voter, uint _pollID) constant public returns (bool committed) {\n require(pollExists(_pollID));\n\n return pollMap[_pollID].didCommit[_voter];\n }\n\n /**\n @dev Checks if user has revealed for specified poll\n @param _voter Address of user to check against\n @param _pollID Integer identifier associated with target poll\n @return Boolean indication of whether user has revealed\n */\n function didReveal(address _voter, uint _pollID) constant public returns (bool revealed) {\n require(pollExists(_pollID));\n\n return pollMap[_pollID].didReveal[_voter];\n }\n\n /**\n @dev Checks if a poll exists\n @param _pollID The pollID whose existance is to be evaluated.\n @return Boolean Indicates whether a poll exists for the provided pollID\n */\n function pollExists(uint _pollID) constant public returns (bool exists) {\n return (_pollID != 0 && _pollID <= pollNonce);\n }\n\n // ---------------------------\n // DOUBLE-LINKED-LIST HELPERS:\n // ---------------------------\n\n /**\n @dev Gets the bytes32 commitHash property of target poll\n @param _voter Address of user to check against\n @param _pollID Integer identifier associated with target poll\n @return Bytes32 hash property attached to target poll\n */\n function getCommitHash(address _voter, uint _pollID) constant public returns (bytes32 commitHash) {\n return bytes32(store.getAttribute(attrUUID(_voter, _pollID), \"commitHash\"));\n }\n\n /**\n @dev Wrapper for getAttribute with attrName=\"numTokens\"\n @param _voter Address of user to check against\n @param _pollID Integer identifier associated with target poll\n @return Number of tokens committed to poll in sorted poll-linked-list\n */\n function getNumTokens(address _voter, uint _pollID) constant public returns (uint numTokens) {\n return store.getAttribute(attrUUID(_voter, _pollID), \"numTokens\");\n }\n\n /**\n @dev Gets top element of sorted poll-linked-list\n @param _voter Address of user to check against\n @return Integer identifier to poll with maximum number of tokens committed to it\n */\n function getLastNode(address _voter) constant public returns (uint pollID) {\n return dllMap[_voter].getPrev(0);\n }\n\n /**\n @dev Gets the numTokens property of getLastNode\n @param _voter Address of user to check against\n @return Maximum number of tokens committed in poll specified\n */\n function getLockedTokens(address _voter) constant public returns (uint numTokens) {\n return getNumTokens(_voter, getLastNode(_voter));\n }\n\n /*\n @dev Takes the last node in the user's DLL and iterates backwards through the list searching\n for a node with a value less than or equal to the provided _numTokens value. When such a node\n is found, if the provided _pollID matches the found nodeID, this operation is an in-place\n update. In that case, return the previous node of the node being updated. Otherwise return the\n first node that was found with a value less than or equal to the provided _numTokens.\n @param _voter The voter whose DLL will be searched\n @param _numTokens The value for the numTokens attribute in the node to be inserted\n @return the node which the propoded node should be inserted after\n */\n function getInsertPointForNumTokens(address _voter, uint _numTokens, uint _pollID)\n constant public returns (uint prevNode) {\n // Get the last node in the list and the number of tokens in that node\n uint nodeID = getLastNode(_voter);\n uint tokensInNode = getNumTokens(_voter, nodeID);\n\n // Iterate backwards through the list until reaching the root node\n while(nodeID != 0) {\n // Get the number of tokens in the current node\n tokensInNode = getNumTokens(_voter, nodeID);\n if(tokensInNode <= _numTokens) { // We found the insert point!\n if(nodeID == _pollID) {\n // This is an in-place update. Return the prev node of the node being updated\n nodeID = dllMap[_voter].getPrev(nodeID);\n }\n // Return the insert point\n return nodeID; \n }\n // We did not find the insert point. Continue iterating backwards through the list\n nodeID = dllMap[_voter].getPrev(nodeID);\n }\n\n // The list is empty, or a smaller value than anything else in the list is being inserted\n return nodeID;\n }\n\n // ----------------\n // GENERAL HELPERS:\n // ----------------\n\n /**\n @dev Checks if an expiration date has been reached\n @param _terminationDate Integer timestamp of date to compare current timestamp with\n @return expired Boolean indication of whether the terminationDate has passed\n */\n function isExpired(uint _terminationDate) constant public returns (bool expired) {\n return (block.timestamp > _terminationDate);\n }\n\n /**\n @dev Generates an identifier which associates a user and a poll together\n @param _pollID Integer identifier associated with target poll\n @return UUID Hash which is deterministic from _user and _pollID\n */\n function attrUUID(address _user, uint _pollID) public pure returns (bytes32 UUID) {\n return keccak256(_user, _pollID);\n }\n}\n", - "sourcePath": "plcrvoting/PLCRVoting.sol", + "bytecode": "0x608060405234801561001057600080fd5b506040516020806129508339810180604052810190808051906020019092919050505080600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008081905550506128c58061008b6000396000f30060806040526004361061016a576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063053e71a61461016f5780632173a10f146101b05780632c052031146101db57806332ed3d60146102465780633b9302941461029b578063427fa1d2146102f2578063441c77c014610349578063494031831461038e5780636148fed5146103d35780636b2d95d4146104305780636cbf9c5e146104875780637f97e836146104d6578063819b02931461053b57806388d21ff3146105b457806397508f36146105f95780639760356014610624578063a1103f3714610651578063a25236fe146106ba578063a4439dc5146106e7578063aa7ca4641461072c578063b11d8bb814610791578063b43bd069146107d2578063d13820921461083d578063d901402b1461089e578063d9548e5314610907578063e7b1d43c1461094c578063ee68483014610979578063fc0c546a146109be575b600080fd5b34801561017b57600080fd5b5061019a60048036038101908080359060200190929190505050610a15565b6040518082815260200191505060405180910390f35b3480156101bc57600080fd5b506101c5610a76565b6040518082815260200191505060405180910390f35b3480156101e757600080fd5b50610230600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190929190505050610a7b565b6040518082815260200191505060405180910390f35b34801561025257600080fd5b50610285600480360381019080803590602001909291908035906020019092919080359060200190929190505050610cba565b6040518082815260200191505060405180910390f35b3480156102a757600080fd5b506102dc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610dd7565b6040518082815260200191505060405180910390f35b3480156102fe57600080fd5b50610333600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610def565b6040518082815260200191505060405180910390f35b34801561035557600080fd5b5061037460048036038101908080359060200190929190505050610ee7565b604051808215151515815260200191505060405180910390f35b34801561039a57600080fd5b506103b960048036038101908080359060200190929190505050610f36565b604051808215151515815260200191505060405180910390f35b3480156103df57600080fd5b506103fe60048036038101908080359060200190929190505050610fc9565b604051808681526020018581526020018481526020018381526020018281526020019550505050505060405180910390f35b34801561043c57600080fd5b50610471600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fff565b6040518082815260200191505060405180910390f35b34801561049357600080fd5b506104d4600480360381019080803590602001909291908035600019169060200190929190803590602001909291908035906020019092919050505061101a565b005b3480156104e257600080fd5b50610521600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506116f3565b604051808215151515815260200191505060405180910390f35b34801561054757600080fd5b5061059a6004803603810190808035906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611772565b604051808215151515815260200191505060405180910390f35b3480156105c057600080fd5b506105df600480360381019080803590602001909291905050506117b6565b604051808215151515815260200191505060405180910390f35b34801561060557600080fd5b5061060e6117d1565b6040518082815260200191505060405180910390f35b34801561063057600080fd5b5061064f600480360381019080803590602001909291905050506117d7565b005b34801561065d57600080fd5b5061069c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611a0c565b60405180826000191660001916815260200191505060405180910390f35b3480156106c657600080fd5b506106e560048036038101908080359060200190929190505050611adb565b005b3480156106f357600080fd5b5061071260048036038101908080359060200190929190505050611dbe565b604051808215151515815260200191505060405180910390f35b34801561073857600080fd5b50610777600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611dfb565b604051808215151515815260200191505060405180910390f35b34801561079d57600080fd5b506107d0600480360381019080803590602001909291908035906020019092919080359060200190929190505050611e7a565b005b3480156107de57600080fd5b50610827600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019092919050505061223c565b6040518082815260200191505060405180910390f35b34801561084957600080fd5b50610888600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506123a2565b6040518082815260200191505060405180910390f35b3480156108aa57600080fd5b506108e9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506124a7565b60405180826000191660001916815260200191505060405180910390f35b34801561091357600080fd5b50610932600480360381019080803590602001909291905050506125af565b604051808215151515815260200191505060405180910390f35b34801561095857600080fd5b50610977600480360381019080803590602001909291905050506125bb565b005b34801561098557600080fd5b506109a4600480360381019080803590602001909291905050506127d2565b604051808215151515815260200191505060405180910390f35b3480156109ca57600080fd5b506109d361280e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000610a20826127d2565b1515610a2b57600080fd5b610a3482610f36565b15610a575760016000838152602001908152602001600020600301549050610a71565b600160008381526020019081526020016000206004015490505b919050565b600081565b6000806000610a8986610def565b9150610a9586836123a2565b90505b600082141515610cad57610aac86836123a2565b90508481111515610bb85783821415610bb057600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6330fe0a0a9091846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b158015610b7257600080fd5b505af4158015610b86573d6000803e3d6000fd5b505050506040513d6020811015610b9c57600080fd5b810190808051906020019092919050505091505b819250610cb1565b600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6330fe0a0a9091846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b158015610c6b57600080fd5b505af4158015610c7f573d6000803e3d6000fd5b505050506040513d6020811015610c9557600080fd5b81019080805190602001909291905050509150610a98565b8192505b50509392505050565b6000806000600160005401600081905550610cde854261283490919063ffffffff16565b9150610cf3848361283490919063ffffffff16565b905060a060405190810160405280838152602001828152602001878152602001600081526020016000815250600160008054815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030155608082015181600401559050503373ffffffffffffffffffffffffffffffffffffffff166000547f404f1f1c229d9eb2a949e7584da6ffde9d059ef2169f487ca815434cce0640d088858560405180848152602001838152602001828152602001935050505060405180910390a3600054925050509392505050565b60026020528060005260406000206000915090505481565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6330fe0a0a909160006040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b158015610ea557600080fd5b505af4158015610eb9573d6000803e3d6000fd5b505050506040513d6020811015610ecf57600080fd5b81019080805190602001909291905050509050919050565b6000610ef2826117b6565b1515610efd57600080fd5b610f1c60016000848152602001908152602001600020600101546125af565b158015610f2f5750610f2d82611dbe565b155b9050919050565b6000610f40612869565b610f49836127d2565b1515610f5457600080fd5b6001600084815260200190815260200160002060a060405190810160405290816000820154815260200160018201548152602001600282015481526020016003820154815260200160048201548152505090508060800151816060015101816040015102816060015160640211915050919050565b60016020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154905085565b60006110138261100e84610def565b6123a2565b9050919050565b60008061102686611dbe565b151561103157600080fd5b83600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561107f57600080fd5b6000861415151561108f57600080fd5b60008314806111885750600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________63366a5ba29091856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561114c57600080fd5b505af4158015611160573d6000803e3d6000fd5b505050506040513d602081101561117657600080fd5b81019080805190602001909291905050505b151561119357600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6307d29ac99091856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561124657600080fd5b505af415801561125a573d6000803e3d6000fd5b505050506040513d602081101561127057600080fd5b81019080805190602001909291905050509150858214611290578161137f565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6307d29ac99091886040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561134357600080fd5b505af4158015611357573d6000803e3d6000fd5b505050506040513d602081101561136d57600080fd5b81019080805190602001909291905050505b915061138d83833387611772565b151561139857600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________639735c51b90918589866040518563ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018085815260200184815260200183815260200182815260200194505050505060006040518083038186803b15801561145b57600080fd5b505af415801561146f573d6000803e3d6000fd5b5050505061147d3387611a0c565b9050600473__AttributeStore________________________63977aa031909183876040518463ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180848152602001836000191660001916815260200180602001838152602001828103825260098152602001807f6e756d546f6b656e73000000000000000000000000000000000000000000000081525060200194505050505060006040518083038186803b15801561153e57600080fd5b505af4158015611552573d6000803e3d6000fd5b50505050600473__AttributeStore________________________63977aa03190918388600190046040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018360001916600019168152602001806020018381526020018281038252600a8152602001807f636f6d6d6974486173680000000000000000000000000000000000000000000081525060200194505050505060006040518083038186803b15801561161957600080fd5b505af415801561162d573d6000803e3d6000fd5b50505050600180600088815260200190815260200160002060050160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff16867fea7979e4280d7e6bffc1c7d83a1ac99f16d02ecc14465ce41016226783b663d7866040518082815260200191505060405180910390a3505050505050565b60006116fe826117b6565b151561170957600080fd5b6001600083815260200190815260200160002060050160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600080600061178185886123a2565b841015915061179085876123a2565b8411158061179e5750600086145b90508180156117aa5750805b92505050949350505050565b60008082141580156117ca57506000548211155b9050919050565b60005481565b6117f660016000838152602001908152602001600020600101546125af565b151561180157600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________63366a5ba29091836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b1580156118b457600080fd5b505af41580156118c8573d6000803e3d6000fd5b505050506040513d60208110156118de57600080fd5b810190808051906020019092919050505015156118fa57600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________636d900ed09091836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060006040518083038186803b1580156119ad57600080fd5b505af41580156119c1573d6000803e3d6000fd5b505050503373ffffffffffffffffffffffffffffffffffffffff16817f402507661c8c8cb90e0a796450b8bdd28b6c516f05279c0cd29e84c344e1699a60405160405180910390a350565b60008282604051602001808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401828152602001925050506040516020818303038152906040526040518082805190602001908083835b602083101515611aa65780518252602082019150602081019050602083039250611a81565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020905092915050565b80600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015611b9957600080fd5b505af1158015611bad573d6000803e3d6000fd5b505050506040513d6020811015611bc357600080fd5b810190808051906020019092919050505010151515611be157600080fd5b80600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015611d2757600080fd5b505af1158015611d3b573d6000803e3d6000fd5b505050506040513d6020811015611d5157600080fd5b81019080805190602001909291905050501515611d6d57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff167ff7aaf024511d9982df8cd0d437c71c30106e6848cd1ba3d288d7a9c0e276aeda826040518082815260200191505060405180910390a250565b6000611dc9826117b6565b1515611dd457600080fd5b611df360016000848152602001908152602001600020600001546125af565b159050919050565b6000611e06826117b6565b1515611e1157600080fd5b6001600083815260200190815260200160002060060160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000611e8584610ee7565b1515611e9057600080fd5b6001600085815260200190815260200160002060050160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611efc57600080fd5b6001600085815260200190815260200160002060060160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515611f6957600080fd5b611f7333856124a7565b60001916838360405160200180838152602001828152602001925050506040516020818303038152906040526040518082805190602001908083835b602083101515611fd45780518252602082019150602081019050602083039250611faf565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191614151561201157600080fd5b61201b33856123a2565b9050600183141561204f57806001600086815260200190815260200160002060030160008282540192505081905550612074565b8060016000868152602001908152602001600020600401600082825401925050819055505b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________636d900ed09091866040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060006040518083038186803b15801561212757600080fd5b505af415801561213b573d6000803e3d6000fd5b50505050600180600086815260200190815260200160002060060160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff1683857ff42c78852433ace4bdcb44f6e80c8daae529e2d999c88cf6bf8f77b1e2890fdd84600160008a815260200190815260200160002060030154600160008b81526020019081526020016000206004015460405180848152602001838152602001828152602001935050505060405180910390a450505050565b60008060008061224b866127d2565b151561225657600080fd5b6001600087815260200190815260200160002060060160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156122c257600080fd5b6122cb86610f36565b6122d65760006122d9565b60015b60ff169250828560405160200180838152602001828152602001925050506040516020818303038152906040526040518082805190602001908083835b60208310151561233b5780518252602082019150602081019050602083039250612316565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915061237487876124a7565b90508060001916826000191614151561238c57600080fd5b61239687876123a2565b93505050509392505050565b6000600473__AttributeStore________________________6350389f5c90916123cc8686611a0c565b6040518363ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180838152602001826000191660001916815260200180602001828103825260098152602001807f6e756d546f6b656e730000000000000000000000000000000000000000000000815250602001935050505060206040518083038186803b15801561246457600080fd5b505af4158015612478573d6000803e3d6000fd5b505050506040513d602081101561248e57600080fd5b8101908080519060200190929190505050905092915050565b6000600473__AttributeStore________________________6350389f5c90916124d18686611a0c565b6040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018260001916600019168152602001806020018281038252600a8152602001807f636f6d6d69744861736800000000000000000000000000000000000000000000815250602001935050505060206040518083038186803b15801561256957600080fd5b505af415801561257d573d6000803e3d6000fd5b505050506040513d602081101561259357600080fd5b8101908080519060200190929190505050600102905092915050565b60008142119050919050565b60006126176125c933610fff565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461285090919063ffffffff16565b905081811015151561262857600080fd5b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561273a57600080fd5b505af115801561274e573d6000803e3d6000fd5b505050506040513d602081101561276457600080fd5b8101908080519060200190929190505050151561278057600080fd5b3373ffffffffffffffffffffffffffffffffffffffff167ffaeb7dbb9992397d26ea1944efd40c80b40f702faf69b46c67ad10aba68ccb79836040518082815260200191505060405180910390a25050565b60006127dd826117b6565b15156127e857600080fd5b61280760016000848152602001908152602001600020600101546125af565b9050919050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000818301905082811015151561284757fe5b80905092915050565b600082821115151561285e57fe5b818303905092915050565b60a060405190810160405280600081526020016000815260200160008152602001600081526020016000815250905600a165627a7a723058208178b061e78479d2c5031eadfe1d4ed75a02b24df302d6d886ba602fc5600e510029", + "deployedBytecode": "0x60806040526004361061016a576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063053e71a61461016f5780632173a10f146101b05780632c052031146101db57806332ed3d60146102465780633b9302941461029b578063427fa1d2146102f2578063441c77c014610349578063494031831461038e5780636148fed5146103d35780636b2d95d4146104305780636cbf9c5e146104875780637f97e836146104d6578063819b02931461053b57806388d21ff3146105b457806397508f36146105f95780639760356014610624578063a1103f3714610651578063a25236fe146106ba578063a4439dc5146106e7578063aa7ca4641461072c578063b11d8bb814610791578063b43bd069146107d2578063d13820921461083d578063d901402b1461089e578063d9548e5314610907578063e7b1d43c1461094c578063ee68483014610979578063fc0c546a146109be575b600080fd5b34801561017b57600080fd5b5061019a60048036038101908080359060200190929190505050610a15565b6040518082815260200191505060405180910390f35b3480156101bc57600080fd5b506101c5610a76565b6040518082815260200191505060405180910390f35b3480156101e757600080fd5b50610230600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190929190505050610a7b565b6040518082815260200191505060405180910390f35b34801561025257600080fd5b50610285600480360381019080803590602001909291908035906020019092919080359060200190929190505050610cba565b6040518082815260200191505060405180910390f35b3480156102a757600080fd5b506102dc600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610dd7565b6040518082815260200191505060405180910390f35b3480156102fe57600080fd5b50610333600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610def565b6040518082815260200191505060405180910390f35b34801561035557600080fd5b5061037460048036038101908080359060200190929190505050610ee7565b604051808215151515815260200191505060405180910390f35b34801561039a57600080fd5b506103b960048036038101908080359060200190929190505050610f36565b604051808215151515815260200191505060405180910390f35b3480156103df57600080fd5b506103fe60048036038101908080359060200190929190505050610fc9565b604051808681526020018581526020018481526020018381526020018281526020019550505050505060405180910390f35b34801561043c57600080fd5b50610471600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fff565b6040518082815260200191505060405180910390f35b34801561049357600080fd5b506104d4600480360381019080803590602001909291908035600019169060200190929190803590602001909291908035906020019092919050505061101a565b005b3480156104e257600080fd5b50610521600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506116f3565b604051808215151515815260200191505060405180910390f35b34801561054757600080fd5b5061059a6004803603810190808035906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611772565b604051808215151515815260200191505060405180910390f35b3480156105c057600080fd5b506105df600480360381019080803590602001909291905050506117b6565b604051808215151515815260200191505060405180910390f35b34801561060557600080fd5b5061060e6117d1565b6040518082815260200191505060405180910390f35b34801561063057600080fd5b5061064f600480360381019080803590602001909291905050506117d7565b005b34801561065d57600080fd5b5061069c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611a0c565b60405180826000191660001916815260200191505060405180910390f35b3480156106c657600080fd5b506106e560048036038101908080359060200190929190505050611adb565b005b3480156106f357600080fd5b5061071260048036038101908080359060200190929190505050611dbe565b604051808215151515815260200191505060405180910390f35b34801561073857600080fd5b50610777600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611dfb565b604051808215151515815260200191505060405180910390f35b34801561079d57600080fd5b506107d0600480360381019080803590602001909291908035906020019092919080359060200190929190505050611e7a565b005b3480156107de57600080fd5b50610827600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291908035906020019092919050505061223c565b6040518082815260200191505060405180910390f35b34801561084957600080fd5b50610888600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506123a2565b6040518082815260200191505060405180910390f35b3480156108aa57600080fd5b506108e9600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506124a7565b60405180826000191660001916815260200191505060405180910390f35b34801561091357600080fd5b50610932600480360381019080803590602001909291905050506125af565b604051808215151515815260200191505060405180910390f35b34801561095857600080fd5b50610977600480360381019080803590602001909291905050506125bb565b005b34801561098557600080fd5b506109a4600480360381019080803590602001909291905050506127d2565b604051808215151515815260200191505060405180910390f35b3480156109ca57600080fd5b506109d361280e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000610a20826127d2565b1515610a2b57600080fd5b610a3482610f36565b15610a575760016000838152602001908152602001600020600301549050610a71565b600160008381526020019081526020016000206004015490505b919050565b600081565b6000806000610a8986610def565b9150610a9586836123a2565b90505b600082141515610cad57610aac86836123a2565b90508481111515610bb85783821415610bb057600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6330fe0a0a9091846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b158015610b7257600080fd5b505af4158015610b86573d6000803e3d6000fd5b505050506040513d6020811015610b9c57600080fd5b810190808051906020019092919050505091505b819250610cb1565b600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6330fe0a0a9091846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b158015610c6b57600080fd5b505af4158015610c7f573d6000803e3d6000fd5b505050506040513d6020811015610c9557600080fd5b81019080805190602001909291905050509150610a98565b8192505b50509392505050565b6000806000600160005401600081905550610cde854261283490919063ffffffff16565b9150610cf3848361283490919063ffffffff16565b905060a060405190810160405280838152602001828152602001878152602001600081526020016000815250600160008054815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030155608082015181600401559050503373ffffffffffffffffffffffffffffffffffffffff166000547f404f1f1c229d9eb2a949e7584da6ffde9d059ef2169f487ca815434cce0640d088858560405180848152602001838152602001828152602001935050505060405180910390a3600054925050509392505050565b60026020528060005260406000206000915090505481565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6330fe0a0a909160006040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b158015610ea557600080fd5b505af4158015610eb9573d6000803e3d6000fd5b505050506040513d6020811015610ecf57600080fd5b81019080805190602001909291905050509050919050565b6000610ef2826117b6565b1515610efd57600080fd5b610f1c60016000848152602001908152602001600020600101546125af565b158015610f2f5750610f2d82611dbe565b155b9050919050565b6000610f40612869565b610f49836127d2565b1515610f5457600080fd5b6001600084815260200190815260200160002060a060405190810160405290816000820154815260200160018201548152602001600282015481526020016003820154815260200160048201548152505090508060800151816060015101816040015102816060015160640211915050919050565b60016020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154905085565b60006110138261100e84610def565b6123a2565b9050919050565b60008061102686611dbe565b151561103157600080fd5b83600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015151561107f57600080fd5b6000861415151561108f57600080fd5b60008314806111885750600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________63366a5ba29091856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561114c57600080fd5b505af4158015611160573d6000803e3d6000fd5b505050506040513d602081101561117657600080fd5b81019080805190602001909291905050505b151561119357600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6307d29ac99091856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561124657600080fd5b505af415801561125a573d6000803e3d6000fd5b505050506040513d602081101561127057600080fd5b81019080805190602001909291905050509150858214611290578161137f565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________6307d29ac99091886040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561134357600080fd5b505af4158015611357573d6000803e3d6000fd5b505050506040513d602081101561136d57600080fd5b81019080805190602001909291905050505b915061138d83833387611772565b151561139857600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________639735c51b90918589866040518563ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018085815260200184815260200183815260200182815260200194505050505060006040518083038186803b15801561145b57600080fd5b505af415801561146f573d6000803e3d6000fd5b5050505061147d3387611a0c565b9050600473__AttributeStore________________________63977aa031909183876040518463ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180848152602001836000191660001916815260200180602001838152602001828103825260098152602001807f6e756d546f6b656e73000000000000000000000000000000000000000000000081525060200194505050505060006040518083038186803b15801561153e57600080fd5b505af4158015611552573d6000803e3d6000fd5b50505050600473__AttributeStore________________________63977aa03190918388600190046040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018360001916600019168152602001806020018381526020018281038252600a8152602001807f636f6d6d6974486173680000000000000000000000000000000000000000000081525060200194505050505060006040518083038186803b15801561161957600080fd5b505af415801561162d573d6000803e3d6000fd5b50505050600180600088815260200190815260200160002060050160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff16867fea7979e4280d7e6bffc1c7d83a1ac99f16d02ecc14465ce41016226783b663d7866040518082815260200191505060405180910390a3505050505050565b60006116fe826117b6565b151561170957600080fd5b6001600083815260200190815260200160002060050160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600080600061178185886123a2565b841015915061179085876123a2565b8411158061179e5750600086145b90508180156117aa5750805b92505050949350505050565b60008082141580156117ca57506000548211155b9050919050565b60005481565b6117f660016000838152602001908152602001600020600101546125af565b151561180157600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________63366a5ba29091836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b1580156118b457600080fd5b505af41580156118c8573d6000803e3d6000fd5b505050506040513d60208110156118de57600080fd5b810190808051906020019092919050505015156118fa57600080fd5b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________636d900ed09091836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060006040518083038186803b1580156119ad57600080fd5b505af41580156119c1573d6000803e3d6000fd5b505050503373ffffffffffffffffffffffffffffffffffffffff16817f402507661c8c8cb90e0a796450b8bdd28b6c516f05279c0cd29e84c344e1699a60405160405180910390a350565b60008282604051602001808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166c01000000000000000000000000028152601401828152602001925050506040516020818303038152906040526040518082805190602001908083835b602083101515611aa65780518252602082019150602081019050602083039250611a81565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020905092915050565b80600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015611b9957600080fd5b505af1158015611bad573d6000803e3d6000fd5b505050506040513d6020811015611bc357600080fd5b810190808051906020019092919050505010151515611be157600080fd5b80600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540192505081905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015611d2757600080fd5b505af1158015611d3b573d6000803e3d6000fd5b505050506040513d6020811015611d5157600080fd5b81019080805190602001909291905050501515611d6d57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff167ff7aaf024511d9982df8cd0d437c71c30106e6848cd1ba3d288d7a9c0e276aeda826040518082815260200191505060405180910390a250565b6000611dc9826117b6565b1515611dd457600080fd5b611df360016000848152602001908152602001600020600001546125af565b159050919050565b6000611e06826117b6565b1515611e1157600080fd5b6001600083815260200190815260200160002060060160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000611e8584610ee7565b1515611e9057600080fd5b6001600085815260200190815260200160002060050160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611efc57600080fd5b6001600085815260200190815260200160002060060160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515611f6957600080fd5b611f7333856124a7565b60001916838360405160200180838152602001828152602001925050506040516020818303038152906040526040518082805190602001908083835b602083101515611fd45780518252602082019150602081019050602083039250611faf565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191614151561201157600080fd5b61201b33856123a2565b9050600183141561204f57806001600086815260200190815260200160002060030160008282540192505081905550612074565b8060016000868152602001908152602001600020600401600082825401925050819055505b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002073__DLL___________________________________636d900ed09091866040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060006040518083038186803b15801561212757600080fd5b505af415801561213b573d6000803e3d6000fd5b50505050600180600086815260200190815260200160002060060160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff1683857ff42c78852433ace4bdcb44f6e80c8daae529e2d999c88cf6bf8f77b1e2890fdd84600160008a815260200190815260200160002060030154600160008b81526020019081526020016000206004015460405180848152602001838152602001828152602001935050505060405180910390a450505050565b60008060008061224b866127d2565b151561225657600080fd5b6001600087815260200190815260200160002060060160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156122c257600080fd5b6122cb86610f36565b6122d65760006122d9565b60015b60ff169250828560405160200180838152602001828152602001925050506040516020818303038152906040526040518082805190602001908083835b60208310151561233b5780518252602082019150602081019050602083039250612316565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020915061237487876124a7565b90508060001916826000191614151561238c57600080fd5b61239687876123a2565b93505050509392505050565b6000600473__AttributeStore________________________6350389f5c90916123cc8686611a0c565b6040518363ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180838152602001826000191660001916815260200180602001828103825260098152602001807f6e756d546f6b656e730000000000000000000000000000000000000000000000815250602001935050505060206040518083038186803b15801561246457600080fd5b505af4158015612478573d6000803e3d6000fd5b505050506040513d602081101561248e57600080fd5b8101908080519060200190929190505050905092915050565b6000600473__AttributeStore________________________6350389f5c90916124d18686611a0c565b6040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018260001916600019168152602001806020018281038252600a8152602001807f636f6d6d69744861736800000000000000000000000000000000000000000000815250602001935050505060206040518083038186803b15801561256957600080fd5b505af415801561257d573d6000803e3d6000fd5b505050506040513d602081101561259357600080fd5b8101908080519060200190929190505050600102905092915050565b60008142119050919050565b60006126176125c933610fff565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461285090919063ffffffff16565b905081811015151561262857600080fd5b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561273a57600080fd5b505af115801561274e573d6000803e3d6000fd5b505050506040513d602081101561276457600080fd5b8101908080519060200190929190505050151561278057600080fd5b3373ffffffffffffffffffffffffffffffffffffffff167ffaeb7dbb9992397d26ea1944efd40c80b40f702faf69b46c67ad10aba68ccb79836040518082815260200191505060405180910390a25050565b60006127dd826117b6565b15156127e857600080fd5b61280760016000848152602001908152602001600020600101546125af565b9050919050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000818301905082811015151561284757fe5b80905092915050565b600082821115151561285e57fe5b818303905092915050565b60a060405190810160405280600081526020016000815260200160008152602001600081526020016000815250905600a165627a7a723058208178b061e78479d2c5031eadfe1d4ed75a02b24df302d6d886ba602fc5600e510029", + "sourceMap": "252:17051:4:-;;;2286:111;8:9:-1;5:2;;;30:1;27;20:12;5:2;2286:111:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2345:10;2331:5;;:25;;;;;;;;;;;;;;;;;;1728:1;2362:9;:30;;;;2286:111;252:17051;;;;;;", + "deployedSourceMap": "252:17051:4:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10565:258;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10565:258:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1686:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1686:43:4;;;;;;;;;;;;;;;;;;;;;;;15433:1074;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15433:1074:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9217:605;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9217:605:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1829:48;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1829:48:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14317:114;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14317:114:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11835:203;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11835:203:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10029:238;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10029:238:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1759:36;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1759:36:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14608:137;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14608:137:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4534:1213;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4534:1213:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12280:173;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12280:173:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6235:399;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6235:399:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13049:124;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13049:124:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1733:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1733:21:4;;;;;;;;;;;;;;;;;;;;;;;3727:244;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3727:244:4;;;;;;;;;;;;;;;;;;;;;;;;;;17158:143;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17158:143:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2742:282;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2742:282:4;;;;;;;;;;;;;;;;;;;;;;;;;;11445:171;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11445:171:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12693:172;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12693:172:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6982:1135;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6982:1135:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8331:467;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8331:467:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13954:165;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13954:165:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13516:180;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13516:180:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16807:131;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16807:131:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3222:353;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3222:353:4;;;;;;;;;;;;;;;;;;;;;;;;;;10997:160;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10997:160:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1995:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1995:18:4;;;;;;;;;;;;;;;;;;;;;;;;;;;10565:258;10648:14;10678:18;10688:7;10678:9;:18::i;:::-;10670:27;;;;;;;;10708:17;10717:7;10708:8;:17::i;:::-;10704:114;;;10740:7;:16;10748:7;10740:16;;;;;;;;;;;:25;;;10733:32;;;;10704:114;10789:7;:16;10797:7;10789:16;;;;;;;;;;;:29;;;10782:36;;10565:258;;;;:::o;1686:43::-;1728:1;1686:43;:::o;15433:1074::-;15539:13;15637:11;15676:17;15651:19;15663:6;15651:11;:19::i;:::-;15637:33;;15696:28;15709:6;15717;15696:12;:28::i;:::-;15676:48;;15802:587;15819:1;15809:6;:11;;15802:587;;;15899:28;15912:6;15920;15899:12;:28::i;:::-;15884:43;;15955:10;15939:12;:26;;15935:312;;;16021:7;16011:6;:17;16007:173;;;16139:6;:14;16146:6;16139:14;;;;;;;;;;;;;;;:22;;;;16162:6;16139:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16139:30:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16139:30:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16139:30:4;;;;;;;;;;;;;;;;16130:39;;16007:173;16231:6;16224:13;;;;15935:312;16352:6;:14;16359:6;16352:14;;;;;;;;;;;;;;;:22;;;;16375:6;16352:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16352:30:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16352:30:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16352:30:4;;;;;;;;;;;;;;;;16343:39;;15802:587;;;16496:6;16489:13;;15433:1074;;;;;;;;:::o;9217:605::-;9314:11;9365:18;9428;9357:1;9345:9;;:13;9333:9;:25;;;;9386:36;9406:15;9386;:19;;:36;;;;:::i;:::-;9365:57;;9449:34;9467:15;9449:13;:17;;:34;;;;:::i;:::-;9428:55;;9511:157;;;;;;;;;9570:13;9511:157;;;;9606:13;9511:157;;;;9536:11;9511:157;;;;9637:1;9511:157;;;;9660:1;9511:157;;;9490:7;:18;9498:9;;9490:18;;;;;;;;;;;:178;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9778:10;9680:114;;9761:9;;9680:114;9700:11;9719:13;9740;9680:114;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9808:9;;9801:16;;9217:605;;;;;;;:::o;1829:48::-;;;;;;;;;;;;;;;;;:::o;14317:114::-;14375:11;14401:6;:14;14408:6;14401:14;;;;;;;;;;;;;;;:22;;;;14424:1;14401:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14401:25:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14401:25:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14401:25:4;;;;;;;;;;;;;;;;14394:32;;14317:114;;;:::o;11835:203::-;11898:11;11925:19;11936:7;11925:10;:19::i;:::-;11917:28;;;;;;;;11960:41;11970:7;:16;11978:7;11970:16;;;;;;;;;;;:30;;;11960:9;:41::i;:::-;11959:42;:74;;;;;12006:27;12025:7;12006:18;:27::i;:::-;12005:28;11959:74;11952:81;;11835:203;;;:::o;10029:238::-;10082:11;10135:16;;:::i;:::-;10109:18;10119:7;10109:9;:18::i;:::-;10101:27;;;;;;;;10154:7;:16;10162:7;10154:16;;;;;;;;;;;10135:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10243:4;:17;;;10227:4;:13;;;:33;10208:4;:15;;;:53;10190:4;:13;;;10184:3;:19;10183:79;10176:86;;10029:238;;;;:::o;1759:36::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14608:137::-;14670:14;14699:41;14712:6;14720:19;14732:6;14720:11;:19::i;:::-;14699:12;:41::i;:::-;14692:48;;14608:137;;;:::o;4534:1213::-;5046:15;5469:12;4669:27;4688:7;4669:18;:27::i;:::-;4661:36;;;;;;;;4743:10;4711:16;:28;4728:10;4711:28;;;;;;;;;;;;;;;;:42;;4703:51;;;;;;;;4813:1;4802:7;:12;;4794:21;;;;;;;;4993:1;4978:11;:16;:60;;;;4998:6;:18;5005:10;4998:18;;;;;;;;;;;;;;;:27;;;;5026:11;4998:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4998:40:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4998:40:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4998:40:4;;;;;;;;;;;;;;;;4978:60;4970:69;;;;;;;;5064:6;:18;5071:10;5064:18;;;;;;;;;;;;;;;:26;;;;5091:11;5064:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5064:39:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5064:39:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5064:39:4;;;;;;;;;;;;;;;;5046:57;;5206:7;5192:10;:21;5191:74;;5255:10;5191:74;;;5217:6;:18;5224:10;5217:18;;;;;;;;;;;;;;;:26;;;;5244:7;5217:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5217:35:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5217:35:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5217:35:4;;;;;;;;;;;;;;;;5191:74;5178:87;;5287:103;5310:11;5331:10;5352;5372;5287:13;:103::i;:::-;5272:124;;;;;;;;5403:6;:18;5410:10;5403:18;;;;;;;;;;;;;;;:25;;;;5429:11;5442:7;5451:10;5403:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5403:59:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5403:59:4;;;;5484:29;5493:10;5505:7;5484:8;:29::i;:::-;5469:44;;5520:5;:18;;;;5539:4;5558:10;5520:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5520:49:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5520:49:4;;;;5575:5;:18;;;;5594:4;5619:11;5614:17;;;5575:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5575:57:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5575:57:4;;;;5680:4;5639:7;:16;5647:7;5639:16;;;;;;;;;;;:26;;:38;5666:10;5639:38;;;;;;;;;;;;;;;;:45;;;;;;;;;;;;;;;;;;5731:10;5695:47;;5710:7;5695:47;5719:10;5695:47;;;;;;;;;;;;;;;;;;4534:1213;;;;;;:::o;12280:173::-;12350:14;12380:19;12391:7;12380:10;:19::i;:::-;12372:28;;;;;;;;12414:7;:16;12422:7;12414:16;;;;;;;;;;;:26;;:34;12441:6;12414:34;;;;;;;;;;;;;;;;;;;;;;;;;12407:41;;12280:173;;;;:::o;6235:399::-;6360:10;6380:14;6516;6412:29;6425:6;6433:7;6412:12;:29::i;:::-;6398:10;:43;;6380:62;;6548:29;6561:6;6569:7;6548:12;:29::i;:::-;6534:10;:43;;:59;;;;6592:1;6581:7;:12;6534:59;6516:78;;6607:9;:22;;;;;6620:9;6607:22;6600:29;;6235:399;;;;;;;;:::o;13049:124::-;13104:11;13142:1;13131:7;:12;;:36;;;;;13158:9;;13147:7;:20;;13131:36;13123:45;;13049:124;;;:::o;1733:21::-;;;;:::o;3727:244::-;3786:41;3796:7;:16;3804:7;3796:16;;;;;;;;;;;:30;;;3786:9;:41::i;:::-;3778:50;;;;;;;;3842:6;:18;3849:10;3842:18;;;;;;;;;;;;;;;:27;;;;3870:7;3842:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3842:36:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3842:36:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3842:36:4;;;;;;;;;;;;;;;;3834:45;;;;;;;;3886:6;:18;3893:10;3886:18;;;;;;;;;;;;;;;:25;;;;3912:7;3886:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3886:34:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3886:34:4;;;;3955:10;3931:35;;3946:7;3931:35;;;;;;;;;;3727:244;:::o;17158:143::-;17226:12;17280:5;17287:7;17263:32;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;17263:32:4;;;17253:43;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;17253:43:4;;;;;;;;;;;;;;;;17246:50;;17158:143;;;;:::o;2742:282::-;2842:10;2811:5;;;;;;;;;;;:15;;;2827:10;2811:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2811:27:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2811:27:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2811:27:4;;;;;;;;;;;;;;;;:41;;2803:50;;;;;;;;2891:10;2859:16;:28;2876:10;2859:28;;;;;;;;;;;;;;;;:42;;;;;;;;;;;2915:5;;;;;;;;;;;:18;;;2934:10;2946:4;2952:10;2915:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2915:48:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2915:48:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2915:48:4;;;;;;;;;;;;;;;;2907:57;;;;;;;;3008:10;2975:44;;;2996:10;2975:44;;;;;;;;;;;;;;;;;;2742:282;:::o;11445:171::-;11508:11;11535:19;11546:7;11535:10;:19::i;:::-;11527:28;;;;;;;;11570:41;11580:7;:16;11588:7;11580:16;;;;;;;;;;;:30;;;11570:9;:41::i;:::-;11569:42;11562:49;;11445:171;;;:::o;12693:172::-;12763:13;12792:19;12803:7;12792:10;:19::i;:::-;12784:28;;;;;;;;12826:7;:16;12834:7;12826:16;;;;;;;;;;;:26;;:34;12853:6;12826:34;;;;;;;;;;;;;;;;;;;;;;;;;12819:41;;12693:172;;;;:::o;6982:1135::-;7563:14;7114:27;7133:7;7114:18;:27::i;:::-;7106:36;;;;;;;;7156:7;:16;7164:7;7156:16;;;;;;;;;;;:26;;:38;7183:10;7156:38;;;;;;;;;;;;;;;;;;;;;;;;;7148:47;;;;;;;;7287:7;:16;7295:7;7287:16;;;;;;;;;;;:26;;:38;7314:10;7287:38;;;;;;;;;;;;;;;;;;;;;;;;;7286:39;7278:48;;;;;;;;7460:34;7474:10;7486:7;7460:13;:34::i;:::-;7409:85;;;7436:11;7449:5;7419:36;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;7419:36:4;;;7409:47;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;7409:47:4;;;;;;;;;;;;;;;;:85;;;;7401:94;;;;;;;;7580:33;7593:10;7605:7;7580:12;:33::i;:::-;7563:50;;7639:1;7624:11;:16;7620:183;;;7724:9;7695:7;:16;7703:7;7695:16;;;;;;;;;;;:25;;;:38;;;;;;;;;;;7620:183;;;7787:9;7754:7;:16;7762:7;7754:16;;;;;;;;;;;:29;;;:42;;;;;;;;;;;7620:183;7809:6;:18;7816:10;7809:18;;;;;;;;;;;;;;;:25;;;;7835:7;7809:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7809:34:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7809:34:4;;;;7944:4;7903:7;:16;7911:7;7903:16;;;;;;;;;;;:26;;:38;7930:10;7903:38;;;;;;;;;;;;;;;;:45;;;;;;;;;;;;;;;;;;8096:10;7960:152;;8083:11;7981:7;7960:152;7996:9;8013:7;:16;8021:7;8013:16;;;;;;;;;;;:25;;;8046:7;:16;8054:7;8046:16;;;;;;;;;;;:29;;;7960:152;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6982:1135;;;;:::o;8331:467::-;8423:17;8531:18;8583;8659;8456;8466:7;8456:9;:18::i;:::-;8448:27;;;;;;;;8489:7;:16;8497:7;8489:16;;;;;;;;;;;:26;;:34;8516:6;8489:34;;;;;;;;;;;;;;;;;;;;;;;;;8481:43;;;;;;;;8552:17;8561:7;8552:8;:17::i;:::-;:25;;8576:1;8552:25;;;8572:1;8552:25;8531:46;;;;8631:13;8646:5;8614:38;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;8614:38:4;;;8604:49;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;8604:49:4;;;;;;;;;;;;;;;;8583:70;;8680:30;8694:6;8702:7;8680:13;:30::i;:::-;8659:51;;8739:10;8725:24;;;:10;:24;;;;8717:33;;;;;;;;8764:29;8777:6;8785:7;8764:12;:29::i;:::-;8757:36;;8331:467;;;;;;;;:::o;13954:165::-;14027:14;14056:5;:18;;;;14075:25;14084:6;14092:7;14075:8;:25::i;:::-;14056:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14056:58:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14056:58:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14056:58:4;;;;;;;;;;;;;;;;14049:65;;13954:165;;;;:::o;13516:180::-;13590:18;13631:5;:18;;;;13650:25;13659:6;13667:7;13650:8;:25::i;:::-;13631:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13631:59:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13631:59:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13631:59:4;;;;;;;;;;;;;;;;13623:68;;13616:75;;13516:180;;;;:::o;16807:131::-;16870:12;16916:16;16898:15;:34;16890:43;;16807:131;;;:::o;3222:353::-;3284:20;3307:61;3340:27;3356:10;3340:15;:27::i;:::-;3307:16;:28;3324:10;3307:28;;;;;;;;;;;;;;;;:32;;:61;;;;:::i;:::-;3284:84;;3401:10;3382:15;:29;;3374:38;;;;;;;;3450:10;3418:16;:28;3435:10;3418:28;;;;;;;;;;;;;;;;:42;;;;;;;;;;;3474:5;;;;;;;;;;;:14;;;3489:10;3501;3474:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3474:38:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3474:38:4;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3474:38:4;;;;;;;;;;;;;;;;3466:47;;;;;;;;3559:10;3524:46;;;3547:10;3524:46;;;;;;;;;;;;;;;;;;3222:353;;:::o;10997:160::-;11051:10;11077:19;11088:7;11077:10;:19::i;:::-;11069:28;;;;;;;;11111:41;11121:7;:16;11129:7;11121:16;;;;;;;;;;;:30;;;11111:9;:41::i;:::-;11104:48;;10997:160;;;:::o;1995:18::-;;;;;;;;;;;;;:::o;1213:123:7:-;1271:9;1296:1;1292;:5;1288:9;;1315:1;1310;:6;;1303:14;;;;;;1330:1;1323:8;;1213:123;;;;:::o;1041:110::-;1099:7;1126:1;1121;:6;;1114:14;;;;;;1145:1;1141;:5;1134:12;;1041:110;;;;:::o;252:17051:4:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", + "source": "pragma solidity 0.4.24;\n\nimport \"./ERC20.sol\";\nimport \"./DLL.sol\";\nimport \"./AttributeStore.sol\";\nimport \"./SafeMath.sol\";\n\n\n/**\n@title Partial-Lock-Commit-Reveal Voting scheme with ERC20 tokens\n@author Team: Aspyn Palatnick, Cem Ozer, Yorke Rhodes\n*/\ncontract PLCRVoting {\n\n // ============\n // EVENTS:\n // ============\n\n event _VoteCommitted(uint indexed pollID, uint numTokens, address indexed voter);\n event _VoteRevealed(uint indexed pollID, uint numTokens, uint votesFor, uint votesAgainst, uint indexed choice, address indexed voter);\n event _PollCreated(uint voteQuorum, uint commitEndDate, uint revealEndDate, uint indexed pollID, address indexed creator);\n event _VotingRightsGranted(uint numTokens, address indexed voter);\n event _VotingRightsWithdrawn(uint numTokens, address indexed voter);\n event _TokensRescued(uint indexed pollID, address indexed voter);\n\n // ============\n // DATA STRUCTURES:\n // ============\n\n using AttributeStore for AttributeStore.Data;\n using DLL for DLL.Data;\n using SafeMath for uint;\n\n struct Poll {\n uint commitEndDate; /// expiration date of commit period for poll\n uint revealEndDate; /// expiration date of reveal period for poll\n uint voteQuorum; /// number of votes required for a proposal to pass\n uint votesFor; /// tally of votes supporting proposal\n uint votesAgainst; /// tally of votes countering proposal\n mapping(address => bool) didCommit; /// indicates whether an address committed a vote for this poll\n mapping(address => bool) didReveal; /// indicates whether an address revealed a vote for this poll\n }\n\n // ============\n // STATE VARIABLES:\n // ============\n\n uint constant public INITIAL_POLL_NONCE = 0;\n uint public pollNonce;\n\n mapping(uint => Poll) public pollMap; // maps pollID to Poll struct\n mapping(address => uint) public voteTokenBalance; // maps user's address to voteToken balance\n\n mapping(address => DLL.Data) dllMap;\n AttributeStore.Data store;\n\n ERC20 public token;\n\n // ============\n // CONSTRUCTOR:\n // ============\n\n /**\n @dev Initializes voteQuorum, commitDuration, revealDuration, and pollNonce in addition to token contract and trusted mapping\n @param _tokenAddr The address where the ERC20 token contract is deployed\n */\n constructor(address _tokenAddr) public {\n token = ERC20(_tokenAddr);\n pollNonce = INITIAL_POLL_NONCE;\n }\n\n // ================\n // TOKEN INTERFACE:\n // ================\n\n /**\n @notice Loads _numTokens ERC20 tokens into the voting contract for one-to-one voting rights\n @dev Assumes that msg.sender has approved voting contract to spend on their behalf\n @param _numTokens The number of votingTokens desired in exchange for ERC20 tokens\n */\n function requestVotingRights(uint _numTokens) external {\n require(token.balanceOf(msg.sender) >= _numTokens);\n voteTokenBalance[msg.sender] += _numTokens;\n require(token.transferFrom(msg.sender, this, _numTokens));\n emit _VotingRightsGranted(_numTokens, msg.sender);\n }\n\n /**\n @notice Withdraw _numTokens ERC20 tokens from the voting contract, revoking these voting rights\n @param _numTokens The number of ERC20 tokens desired in exchange for voting rights\n */\n function withdrawVotingRights(uint _numTokens) external {\n uint availableTokens = voteTokenBalance[msg.sender].sub(getLockedTokens(msg.sender));\n require(availableTokens >= _numTokens);\n voteTokenBalance[msg.sender] -= _numTokens;\n require(token.transfer(msg.sender, _numTokens));\n emit _VotingRightsWithdrawn(_numTokens, msg.sender);\n }\n\n /**\n @dev Unlocks tokens locked in unrevealed vote where poll has ended\n @param _pollID Integer identifier associated with the target poll\n */\n function rescueTokens(uint _pollID) external {\n require(isExpired(pollMap[_pollID].revealEndDate));\n require(dllMap[msg.sender].contains(_pollID));\n\n dllMap[msg.sender].remove(_pollID);\n emit _TokensRescued(_pollID, msg.sender);\n }\n\n // =================\n // VOTING INTERFACE:\n // =================\n\n /**\n @notice Commits vote using hash of choice and secret salt to conceal vote until reveal\n @param _pollID Integer identifier associated with target poll\n @param _secretHash Commit keccak256 hash of voter's choice and salt (tightly packed in this order)\n @param _numTokens The number of tokens to be committed towards the target poll\n @param _prevPollID The ID of the poll that the user has voted the maximum number of tokens in which is still less than or equal to numTokens\n */\n function commitVote(\n uint _pollID,\n bytes32 _secretHash,\n uint _numTokens,\n uint _prevPollID\n ) external\n {\n require(commitPeriodActive(_pollID));\n require(voteTokenBalance[msg.sender] >= _numTokens); // prevent user from overspending\n require(_pollID != 0); // prevent user from committing to zero node placeholder\n\n // Check if _prevPollID exists in the user's DLL or if _prevPollID is 0\n require(_prevPollID == 0 || dllMap[msg.sender].contains(_prevPollID));\n\n uint nextPollID = dllMap[msg.sender].getNext(_prevPollID);\n\n // if nextPollID is equal to _pollID, _pollID is being updated,\n nextPollID = (nextPollID == _pollID) ? dllMap[msg.sender].getNext(_pollID) : nextPollID;\n\n require(\n validPosition(\n _prevPollID,\n nextPollID, \n msg.sender,\n _numTokens\n )\n );\n\n dllMap[msg.sender].insert(_prevPollID, _pollID, nextPollID);\n\n bytes32 UUID = attrUUID(msg.sender, _pollID);\n\n store.setAttribute(UUID, \"numTokens\", _numTokens);\n store.setAttribute(UUID, \"commitHash\", uint(_secretHash));\n\n pollMap[_pollID].didCommit[msg.sender] = true;\n emit _VoteCommitted(_pollID, _numTokens, msg.sender);\n }\n\n /**\n @dev Compares previous and next poll's committed tokens for sorting purposes\n @param _prevID Integer identifier associated with previous poll in sorted order\n @param _nextID Integer identifier associated with next poll in sorted order\n @param _voter Address of user to check DLL position for\n @param _numTokens The number of tokens to be committed towards the poll (used for sorting)\n @return valid Boolean indication of if the specified position maintains the sort\n */\n function validPosition(\n uint _prevID,\n uint _nextID,\n address _voter,\n uint _numTokens\n ) public view returns (bool valid)\n {\n bool prevValid = (_numTokens >= getNumTokens(_voter, _prevID));\n // if next is zero node, _numTokens does not need to be greater\n bool nextValid = (_numTokens <= getNumTokens(_voter, _nextID) || _nextID == 0);\n return prevValid && nextValid;\n }\n\n /**\n @notice Reveals vote with choice and secret salt used in generating commitHash to attribute committed tokens\n @param _pollID Integer identifier associated with target poll\n @param _voteOption Vote choice used to generate commitHash for associated poll\n @param _salt Secret number used to generate commitHash for associated poll\n */\n function revealVote(uint _pollID, uint _voteOption, uint _salt) external {\n // Make sure the reveal period is active\n require(revealPeriodActive(_pollID));\n require(pollMap[_pollID].didCommit[msg.sender]); // make sure user has committed a vote for this poll\n require(!pollMap[_pollID].didReveal[msg.sender]); // prevent user from revealing multiple times\n require(keccak256(abi.encodePacked(_voteOption, _salt)) == getCommitHash(msg.sender, _pollID)); // compare resultant hash from inputs to original commitHash\n\n uint numTokens = getNumTokens(msg.sender, _pollID);\n\n if (_voteOption == 1) {// apply numTokens to appropriate poll choice\n pollMap[_pollID].votesFor += numTokens;\n } else {\n pollMap[_pollID].votesAgainst += numTokens;\n }\n\n dllMap[msg.sender].remove(_pollID); // remove the node referring to this vote upon reveal\n pollMap[_pollID].didReveal[msg.sender] = true;\n\n emit _VoteRevealed(\n _pollID,\n numTokens,\n pollMap[_pollID].votesFor,\n pollMap[_pollID].votesAgainst,\n _voteOption, msg.sender\n );\n }\n\n /**\n @param _pollID Integer identifier associated with target poll\n @param _salt Arbitrarily chosen integer used to generate secretHash\n @return correctVotes Number of tokens voted for winning option\n */\n function getNumPassingTokens(address _voter, uint _pollID, uint _salt) public view returns (uint correctVotes) {\n require(pollEnded(_pollID));\n require(pollMap[_pollID].didReveal[_voter]);\n\n uint winningChoice = isPassed(_pollID) ? 1 : 0;\n bytes32 winnerHash = keccak256(abi.encodePacked(winningChoice, _salt));\n bytes32 commitHash = getCommitHash(_voter, _pollID);\n\n require(winnerHash == commitHash);\n\n return getNumTokens(_voter, _pollID);\n }\n\n // ==================\n // POLLING INTERFACE:\n // ==================\n\n /**\n @dev Initiates a poll with canonical configured parameters at pollID emitted by PollCreated event\n @param _voteQuorum Type of majority (out of 100) that is necessary for poll to be successful\n @param _commitDuration Length of desired commit period in seconds\n @param _revealDuration Length of desired reveal period in seconds\n */\n function startPoll(uint _voteQuorum, uint _commitDuration, uint _revealDuration) public returns (uint pollID) {\n pollNonce = pollNonce + 1;\n\n uint commitEndDate = block.timestamp.add(_commitDuration);\n uint revealEndDate = commitEndDate.add(_revealDuration);\n\n pollMap[pollNonce] = Poll({\n voteQuorum: _voteQuorum,\n commitEndDate: commitEndDate,\n revealEndDate: revealEndDate,\n votesFor: 0,\n votesAgainst: 0\n });\n\n emit _PollCreated(\n _voteQuorum,\n commitEndDate,\n revealEndDate,\n pollNonce,\n msg.sender\n );\n\n return pollNonce;\n }\n\n /**\n @notice Determines if proposal has passed\n @dev Check if votesFor out of totalVotes exceeds votesQuorum (requires pollEnded)\n @param _pollID Integer identifier associated with target poll\n */\n function isPassed(uint _pollID) view public returns (bool passed) {\n require(pollEnded(_pollID));\n\n Poll memory poll = pollMap[_pollID];\n return (100 * poll.votesFor) > (poll.voteQuorum * (poll.votesFor + poll.votesAgainst));\n }\n\n // ----------------\n // POLLING HELPERS:\n // ----------------\n\n /**\n @dev Gets the total winning votes for reward distribution purposes\n @param _pollID Integer identifier associated with target poll\n @return Total number of votes committed to the winning option for specified poll\n */\n function getTotalNumberOfTokensForWinningOption(uint _pollID) view public returns (uint numTokens) {\n require(pollEnded(_pollID));\n\n if (isPassed(_pollID))\n return pollMap[_pollID].votesFor;\n else\n return pollMap[_pollID].votesAgainst;\n }\n\n /**\n @notice Determines if poll is over\n @dev Checks isExpired for specified poll's revealEndDate\n @return Boolean indication of whether polling period is over\n */\n function pollEnded(uint _pollID) view public returns (bool ended) {\n require(pollExists(_pollID));\n\n return isExpired(pollMap[_pollID].revealEndDate);\n }\n\n /**\n @notice Checks if the commit period is still active for the specified poll\n @dev Checks isExpired for the specified poll's commitEndDate\n @param _pollID Integer identifier associated with target poll\n @return Boolean indication of isCommitPeriodActive for target poll\n */\n function commitPeriodActive(uint _pollID) view public returns (bool active) {\n require(pollExists(_pollID));\n\n return !isExpired(pollMap[_pollID].commitEndDate);\n }\n\n /**\n @notice Checks if the reveal period is still active for the specified poll\n @dev Checks isExpired for the specified poll's revealEndDate\n @param _pollID Integer identifier associated with target poll\n */\n function revealPeriodActive(uint _pollID) view public returns (bool active) {\n require(pollExists(_pollID));\n\n return !isExpired(pollMap[_pollID].revealEndDate) && !commitPeriodActive(_pollID);\n }\n\n /**\n @dev Checks if user has committed for specified poll\n @param _voter Address of user to check against\n @param _pollID Integer identifier associated with target poll\n @return Boolean indication of whether user has committed\n */\n function didCommit(address _voter, uint _pollID) view public returns (bool committed) {\n require(pollExists(_pollID));\n\n return pollMap[_pollID].didCommit[_voter];\n }\n\n /**\n @dev Checks if user has revealed for specified poll\n @param _voter Address of user to check against\n @param _pollID Integer identifier associated with target poll\n @return Boolean indication of whether user has revealed\n */\n function didReveal(address _voter, uint _pollID) view public returns (bool revealed) {\n require(pollExists(_pollID));\n\n return pollMap[_pollID].didReveal[_voter];\n }\n\n /**\n @dev Checks if a poll exists\n @param _pollID The pollID whose existance is to be evaluated.\n @return Boolean Indicates whether a poll exists for the provided pollID\n */\n function pollExists(uint _pollID) view public returns (bool exists) {\n return (_pollID != 0 && _pollID <= pollNonce);\n }\n\n // ---------------------------\n // DOUBLE-LINKED-LIST HELPERS:\n // ---------------------------\n\n /**\n @dev Gets the bytes32 commitHash property of target poll\n @param _voter Address of user to check against\n @param _pollID Integer identifier associated with target poll\n @return Bytes32 hash property attached to target poll\n */\n function getCommitHash(address _voter, uint _pollID) view public returns (bytes32 commitHash) {\n return bytes32(store.getAttribute(attrUUID(_voter, _pollID), \"commitHash\"));\n }\n\n /**\n @dev Wrapper for getAttribute with attrName=\"numTokens\"\n @param _voter Address of user to check against\n @param _pollID Integer identifier associated with target poll\n @return Number of tokens committed to poll in sorted poll-linked-list\n */\n function getNumTokens(address _voter, uint _pollID) view public returns (uint numTokens) {\n return store.getAttribute(attrUUID(_voter, _pollID), \"numTokens\");\n }\n\n /**\n @dev Gets top element of sorted poll-linked-list\n @param _voter Address of user to check against\n @return Integer identifier to poll with maximum number of tokens committed to it\n */\n function getLastNode(address _voter) view public returns (uint pollID) {\n return dllMap[_voter].getPrev(0);\n }\n\n /**\n @dev Gets the numTokens property of getLastNode\n @param _voter Address of user to check against\n @return Maximum number of tokens committed in poll specified\n */\n function getLockedTokens(address _voter) view public returns (uint numTokens) {\n return getNumTokens(_voter, getLastNode(_voter));\n }\n\n /*\n @dev Takes the last node in the user's DLL and iterates backwards through the list searching\n for a node with a value less than or equal to the provided _numTokens value. When such a node\n is found, if the provided _pollID matches the found nodeID, this operation is an in-place\n update. In that case, return the previous node of the node being updated. Otherwise return the\n first node that was found with a value less than or equal to the provided _numTokens.\n @param _voter The voter whose DLL will be searched\n @param _numTokens The value for the numTokens attribute in the node to be inserted\n @return the node which the propoded node should be inserted after\n */\n function getInsertPointForNumTokens(address _voter, uint _numTokens, uint _pollID)\n view public returns (uint prevNode)\n {\n // Get the last node in the list and the number of tokens in that node\n uint nodeID = getLastNode(_voter);\n uint tokensInNode = getNumTokens(_voter, nodeID);\n\n // Iterate backwards through the list until reaching the root node\n while (nodeID != 0) {\n // Get the number of tokens in the current node\n tokensInNode = getNumTokens(_voter, nodeID);\n if (tokensInNode <= _numTokens) { // We found the insert point!\n if (nodeID == _pollID) {\n // This is an in-place update. Return the prev node of the node being updated\n nodeID = dllMap[_voter].getPrev(nodeID);\n }\n // Return the insert point\n return nodeID; \n }\n // We did not find the insert point. Continue iterating backwards through the list\n nodeID = dllMap[_voter].getPrev(nodeID);\n }\n\n // The list is empty, or a smaller value than anything else in the list is being inserted\n return nodeID;\n }\n\n // ----------------\n // GENERAL HELPERS:\n // ----------------\n\n /**\n @dev Checks if an expiration date has been reached\n @param _terminationDate Integer timestamp of date to compare current timestamp with\n @return expired Boolean indication of whether the terminationDate has passed\n */\n function isExpired(uint _terminationDate) view public returns (bool expired) {\n return (block.timestamp > _terminationDate);\n }\n\n /**\n @dev Generates an identifier which associates a user and a poll together\n @param _pollID Integer identifier associated with target poll\n @return UUID Hash which is deterministic from _user and _pollID\n */\n function attrUUID(address _user, uint _pollID) public pure returns (bytes32 UUID) {\n return keccak256(abi.encodePacked(_user, _pollID));\n }\n}\n", + "sourcePath": "/home/rob/Github/computable/contracts/PLCRVoting.sol", "ast": { - "absolutePath": "plcrvoting/PLCRVoting.sol", + "absolutePath": "/home/rob/Github/computable/contracts/PLCRVoting.sol", "exportedSymbols": { "PLCRVoting": [ - 3488 + 1471 ] }, - "id": 3489, + "id": 1472, "nodeType": "SourceUnit", "nodes": [ { - "id": 2468, + "id": 442, "literals": [ "solidity", - "^", "0.4", - ".8" + ".24" ], "nodeType": "PragmaDirective", - "src": "0:23:5" + "src": "0:23:4" }, { - "absolutePath": "tokens/eip20/EIP20Interface.sol", - "file": "tokens/eip20/EIP20Interface.sol", - "id": 2469, + "absolutePath": "/home/rob/Github/computable/contracts/ERC20.sol", + "file": "./ERC20.sol", + "id": 443, "nodeType": "ImportDirective", - "scope": 3489, - "sourceUnit": 3783, - "src": "24:41:5", + "scope": 1472, + "sourceUnit": 409, + "src": "25:21:4", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "dll/DLL.sol", - "file": "dll/DLL.sol", - "id": 2470, + "absolutePath": "/home/rob/Github/computable/contracts/DLL.sol", + "file": "./DLL.sol", + "id": 444, "nodeType": "ImportDirective", - "scope": 3489, - "sourceUnit": 2467, - "src": "66:21:5", + "scope": 1472, + "sourceUnit": 366, + "src": "47:19:4", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "attrstore/AttributeStore.sol", - "file": "attrstore/AttributeStore.sol", - "id": 2471, + "absolutePath": "/home/rob/Github/computable/contracts/AttributeStore.sol", + "file": "./AttributeStore.sol", + "id": 445, "nodeType": "ImportDirective", - "scope": 3489, - "sourceUnit": 2166, - "src": "88:38:5", + "scope": 1472, + "sourceUnit": 65, + "src": "67:30:4", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "zeppelin/math/SafeMath.sol", - "file": "zeppelin/math/SafeMath.sol", - "id": 2472, + "absolutePath": "/home/rob/Github/computable/contracts/SafeMath.sol", + "file": "./SafeMath.sol", + "id": 446, "nodeType": "ImportDirective", - "scope": 3489, - "sourceUnit": 3878, - "src": "127:36:5", + "scope": 1472, + "sourceUnit": 3688, + "src": "98:24:4", "symbolAliases": [], "unitAlias": "" }, @@ -816,9 +815,9 @@ "contractKind": "contract", "documentation": "@title Partial-Lock-Commit-Reveal Voting scheme with ERC20 tokens\n@author Team: Aspyn Palatnick, Cem Ozer, Yorke Rhodes", "fullyImplemented": true, - "id": 3488, + "id": 1471, "linearizedBaseContracts": [ - 3488 + 1471 ], "name": "PLCRVoting", "nodeType": "ContractDefinition", @@ -826,21 +825,21 @@ { "anonymous": false, "documentation": null, - "id": 2480, + "id": 454, "name": "_VoteCommitted", "nodeType": "EventDefinition", "parameters": { - "id": 2479, + "id": 453, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2474, + "id": 448, "indexed": true, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 2480, - "src": "396:19:5", + "scope": 454, + "src": "348:19:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -848,10 +847,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2473, + "id": 447, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "396:4:5", + "src": "348:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -862,12 +861,12 @@ }, { "constant": false, - "id": 2476, + "id": 450, "indexed": false, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 2480, - "src": "417:14:5", + "scope": 454, + "src": "369:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -875,10 +874,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2475, + "id": 449, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "417:4:5", + "src": "369:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -889,12 +888,12 @@ }, { "constant": false, - "id": 2478, + "id": 452, "indexed": true, "name": "voter", "nodeType": "VariableDeclaration", - "scope": 2480, - "src": "433:21:5", + "scope": 454, + "src": "385:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -902,10 +901,10 @@ "typeString": "address" }, "typeName": { - "id": 2477, + "id": 451, "name": "address", "nodeType": "ElementaryTypeName", - "src": "433:7:5", + "src": "385:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -915,28 +914,28 @@ "visibility": "internal" } ], - "src": "395:60:5" + "src": "347:60:4" }, - "src": "375:81:5" + "src": "327:81:4" }, { "anonymous": false, "documentation": null, - "id": 2494, + "id": 468, "name": "_VoteRevealed", "nodeType": "EventDefinition", "parameters": { - "id": 2493, + "id": 467, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2482, + "id": 456, "indexed": true, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 2494, - "src": "481:19:5", + "scope": 468, + "src": "431:19:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -944,10 +943,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2481, + "id": 455, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "481:4:5", + "src": "431:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -958,12 +957,12 @@ }, { "constant": false, - "id": 2484, + "id": 458, "indexed": false, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 2494, - "src": "502:14:5", + "scope": 468, + "src": "452:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -971,10 +970,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2483, + "id": 457, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "502:4:5", + "src": "452:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -985,12 +984,12 @@ }, { "constant": false, - "id": 2486, + "id": 460, "indexed": false, "name": "votesFor", "nodeType": "VariableDeclaration", - "scope": 2494, - "src": "518:13:5", + "scope": 468, + "src": "468:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -998,10 +997,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2485, + "id": 459, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "518:4:5", + "src": "468:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1012,12 +1011,12 @@ }, { "constant": false, - "id": 2488, + "id": 462, "indexed": false, "name": "votesAgainst", "nodeType": "VariableDeclaration", - "scope": 2494, - "src": "533:17:5", + "scope": 468, + "src": "483:17:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1025,10 +1024,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2487, + "id": 461, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "533:4:5", + "src": "483:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1039,12 +1038,12 @@ }, { "constant": false, - "id": 2490, + "id": 464, "indexed": true, "name": "choice", "nodeType": "VariableDeclaration", - "scope": 2494, - "src": "552:19:5", + "scope": 468, + "src": "502:19:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1052,10 +1051,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2489, + "id": 463, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "552:4:5", + "src": "502:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1066,12 +1065,12 @@ }, { "constant": false, - "id": 2492, + "id": 466, "indexed": true, "name": "voter", "nodeType": "VariableDeclaration", - "scope": 2494, - "src": "573:21:5", + "scope": 468, + "src": "523:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1079,10 +1078,10 @@ "typeString": "address" }, "typeName": { - "id": 2491, + "id": 465, "name": "address", "nodeType": "ElementaryTypeName", - "src": "573:7:5", + "src": "523:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1092,28 +1091,28 @@ "visibility": "internal" } ], - "src": "480:115:5" + "src": "430:115:4" }, - "src": "461:135:5" + "src": "411:135:4" }, { "anonymous": false, "documentation": null, - "id": 2506, + "id": 480, "name": "_PollCreated", "nodeType": "EventDefinition", "parameters": { - "id": 2505, + "id": 479, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2496, + "id": 470, "indexed": false, "name": "voteQuorum", "nodeType": "VariableDeclaration", - "scope": 2506, - "src": "620:15:5", + "scope": 480, + "src": "568:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1121,10 +1120,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2495, + "id": 469, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "620:4:5", + "src": "568:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1135,12 +1134,12 @@ }, { "constant": false, - "id": 2498, + "id": 472, "indexed": false, "name": "commitEndDate", "nodeType": "VariableDeclaration", - "scope": 2506, - "src": "637:18:5", + "scope": 480, + "src": "585:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1148,10 +1147,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2497, + "id": 471, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "637:4:5", + "src": "585:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1162,12 +1161,12 @@ }, { "constant": false, - "id": 2500, + "id": 474, "indexed": false, "name": "revealEndDate", "nodeType": "VariableDeclaration", - "scope": 2506, - "src": "657:18:5", + "scope": 480, + "src": "605:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1175,10 +1174,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2499, + "id": 473, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "657:4:5", + "src": "605:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1189,12 +1188,12 @@ }, { "constant": false, - "id": 2502, + "id": 476, "indexed": true, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 2506, - "src": "677:19:5", + "scope": 480, + "src": "625:19:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1202,10 +1201,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2501, + "id": 475, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "677:4:5", + "src": "625:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1216,12 +1215,12 @@ }, { "constant": false, - "id": 2504, + "id": 478, "indexed": true, "name": "creator", "nodeType": "VariableDeclaration", - "scope": 2506, - "src": "698:23:5", + "scope": 480, + "src": "646:23:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1229,10 +1228,10 @@ "typeString": "address" }, "typeName": { - "id": 2503, + "id": 477, "name": "address", "nodeType": "ElementaryTypeName", - "src": "698:7:5", + "src": "646:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1242,28 +1241,28 @@ "visibility": "internal" } ], - "src": "619:103:5" + "src": "567:103:4" }, - "src": "601:122:5" + "src": "549:122:4" }, { "anonymous": false, "documentation": null, - "id": 2512, + "id": 486, "name": "_VotingRightsGranted", "nodeType": "EventDefinition", "parameters": { - "id": 2511, + "id": 485, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2508, + "id": 482, "indexed": false, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 2512, - "src": "755:14:5", + "scope": 486, + "src": "701:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1271,10 +1270,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2507, + "id": 481, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "755:4:5", + "src": "701:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1285,12 +1284,12 @@ }, { "constant": false, - "id": 2510, + "id": 484, "indexed": true, "name": "voter", "nodeType": "VariableDeclaration", - "scope": 2512, - "src": "771:21:5", + "scope": 486, + "src": "717:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1298,10 +1297,10 @@ "typeString": "address" }, "typeName": { - "id": 2509, + "id": 483, "name": "address", "nodeType": "ElementaryTypeName", - "src": "771:7:5", + "src": "717:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1311,28 +1310,28 @@ "visibility": "internal" } ], - "src": "754:39:5" + "src": "700:39:4" }, - "src": "728:66:5" + "src": "674:66:4" }, { "anonymous": false, "documentation": null, - "id": 2518, + "id": 492, "name": "_VotingRightsWithdrawn", "nodeType": "EventDefinition", "parameters": { - "id": 2517, + "id": 491, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2514, + "id": 488, "indexed": false, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 2518, - "src": "828:14:5", + "scope": 492, + "src": "772:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1340,10 +1339,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2513, + "id": 487, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "828:4:5", + "src": "772:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1354,12 +1353,12 @@ }, { "constant": false, - "id": 2516, + "id": 490, "indexed": true, "name": "voter", "nodeType": "VariableDeclaration", - "scope": 2518, - "src": "844:21:5", + "scope": 492, + "src": "788:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1367,10 +1366,10 @@ "typeString": "address" }, "typeName": { - "id": 2515, + "id": 489, "name": "address", "nodeType": "ElementaryTypeName", - "src": "844:7:5", + "src": "788:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1380,28 +1379,28 @@ "visibility": "internal" } ], - "src": "827:39:5" + "src": "771:39:4" }, - "src": "799:68:5" + "src": "743:68:4" }, { "anonymous": false, "documentation": null, - "id": 2524, + "id": 498, "name": "_TokensRescued", "nodeType": "EventDefinition", "parameters": { - "id": 2523, + "id": 497, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2520, + "id": 494, "indexed": true, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 2524, - "src": "893:19:5", + "scope": 498, + "src": "835:19:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1409,10 +1408,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2519, + "id": 493, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "893:4:5", + "src": "835:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1423,12 +1422,12 @@ }, { "constant": false, - "id": 2522, + "id": 496, "indexed": true, "name": "voter", "nodeType": "VariableDeclaration", - "scope": 2524, - "src": "914:21:5", + "scope": 498, + "src": "856:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1436,10 +1435,10 @@ "typeString": "address" }, "typeName": { - "id": 2521, + "id": 495, "name": "address", "nodeType": "ElementaryTypeName", - "src": "914:7:5", + "src": "856:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1449,89 +1448,89 @@ "visibility": "internal" } ], - "src": "892:44:5" + "src": "834:44:4" }, - "src": "872:65:5" + "src": "814:65:4" }, { - "id": 2527, + "id": 501, "libraryName": { "contractScope": null, - "id": 2525, + "id": 499, "name": "AttributeStore", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2165, - "src": "1014:14:5", + "referencedDeclaration": 64, + "src": "948:14:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_AttributeStore_$2165", + "typeIdentifier": "t_contract$_AttributeStore_$64", "typeString": "library AttributeStore" } }, "nodeType": "UsingForDirective", - "src": "1008:45:5", + "src": "942:45:4", "typeName": { "contractScope": null, - "id": 2526, + "id": 500, "name": "AttributeStore.Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2113, - "src": "1033:19:5", + "referencedDeclaration": 6, + "src": "967:19:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data" } } }, { - "id": 2530, + "id": 504, "libraryName": { "contractScope": null, - "id": 2528, + "id": 502, "name": "DLL", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2466, - "src": "1064:3:5", + "referencedDeclaration": 365, + "src": "996:3:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_DLL_$2466", + "typeIdentifier": "t_contract$_DLL_$365", "typeString": "library DLL" } }, "nodeType": "UsingForDirective", - "src": "1058:23:5", + "src": "990:23:4", "typeName": { "contractScope": null, - "id": 2529, + "id": 503, "name": "DLL.Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "1072:8:5", + "referencedDeclaration": 79, + "src": "1004:8:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } } }, { - "id": 2533, + "id": 507, "libraryName": { "contractScope": null, - "id": 2531, + "id": 505, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3877, - "src": "1092:8:5", + "referencedDeclaration": 3687, + "src": "1022:8:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$3877", + "typeIdentifier": "t_contract$_SafeMath_$3687", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", - "src": "1086:24:5", + "src": "1016:24:4", "typeName": { - "id": 2532, + "id": 506, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1105:4:5", + "src": "1035:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1540,15 +1539,15 @@ }, { "canonicalName": "PLCRVoting.Poll", - "id": 2552, + "id": 526, "members": [ { "constant": false, - "id": 2535, + "id": 509, "name": "commitEndDate", "nodeType": "VariableDeclaration", - "scope": 2552, - "src": "1138:18:5", + "scope": 526, + "src": "1062:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1556,10 +1555,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2534, + "id": 508, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1138:4:5", + "src": "1062:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1570,11 +1569,11 @@ }, { "constant": false, - "id": 2537, + "id": 511, "name": "revealEndDate", "nodeType": "VariableDeclaration", - "scope": 2552, - "src": "1216:18:5", + "scope": 526, + "src": "1136:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1582,10 +1581,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2536, + "id": 510, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1216:4:5", + "src": "1136:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1596,11 +1595,11 @@ }, { "constant": false, - "id": 2539, + "id": 513, "name": "voteQuorum", "nodeType": "VariableDeclaration", - "scope": 2552, - "src": "1294:15:5", + "scope": 526, + "src": "1210:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1608,10 +1607,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2538, + "id": 512, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1294:4:5", + "src": "1210:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1622,11 +1621,11 @@ }, { "constant": false, - "id": 2541, + "id": 515, "name": "votesFor", "nodeType": "VariableDeclaration", - "scope": 2552, - "src": "1375:13:5", + "scope": 526, + "src": "1286:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1634,10 +1633,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2540, + "id": 514, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1375:4:5", + "src": "1286:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1648,11 +1647,11 @@ }, { "constant": false, - "id": 2543, + "id": 517, "name": "votesAgainst", "nodeType": "VariableDeclaration", - "scope": 2552, - "src": "1442:17:5", + "scope": 526, + "src": "1347:17:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1660,10 +1659,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2542, + "id": 516, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1442:4:5", + "src": "1347:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1674,11 +1673,11 @@ }, { "constant": false, - "id": 2547, + "id": 521, "name": "didCommit", "nodeType": "VariableDeclaration", - "scope": 2552, - "src": "1513:34:5", + "scope": 526, + "src": "1414:34:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1686,28 +1685,28 @@ "typeString": "mapping(address => bool)" }, "typeName": { - "id": 2546, + "id": 520, "keyType": { - "id": 2544, + "id": 518, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1521:7:5", + "src": "1422:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1513:24:5", + "src": "1414:24:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" }, "valueType": { - "id": 2545, + "id": 519, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1532:4:5", + "src": "1433:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1719,11 +1718,11 @@ }, { "constant": false, - "id": 2551, + "id": 525, "name": "didReveal", "nodeType": "VariableDeclaration", - "scope": 2552, - "src": "1622:34:5", + "scope": 526, + "src": "1519:34:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1731,28 +1730,28 @@ "typeString": "mapping(address => bool)" }, "typeName": { - "id": 2550, + "id": 524, "keyType": { - "id": 2548, + "id": 522, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1630:7:5", + "src": "1527:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1622:24:5", + "src": "1519:24:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" }, "valueType": { - "id": 2549, + "id": 523, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1641:4:5", + "src": "1538:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1765,17 +1764,17 @@ ], "name": "Poll", "nodeType": "StructDefinition", - "scope": 3488, - "src": "1116:612:5", + "scope": 1471, + "src": "1044:579:4", "visibility": "public" }, { "constant": true, - "id": 2555, + "id": 529, "name": "INITIAL_POLL_NONCE", "nodeType": "VariableDeclaration", - "scope": 3488, - "src": "1799:43:5", + "scope": 1471, + "src": "1686:43:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1783,10 +1782,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2553, + "id": 527, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1799:4:5", + "src": "1686:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1795,14 +1794,14 @@ "value": { "argumentTypes": null, "hexValue": "30", - "id": 2554, + "id": 528, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1841:1:5", + "src": "1728:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -1814,11 +1813,11 @@ }, { "constant": false, - "id": 2557, + "id": 531, "name": "pollNonce", "nodeType": "VariableDeclaration", - "scope": 3488, - "src": "1848:21:5", + "scope": 1471, + "src": "1733:21:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1826,10 +1825,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2556, + "id": 530, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1848:4:5", + "src": "1733:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1840,44 +1839,44 @@ }, { "constant": false, - "id": 2561, + "id": 535, "name": "pollMap", "nodeType": "VariableDeclaration", - "scope": 3488, - "src": "1876:36:5", + "scope": 1471, + "src": "1759:36:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll)" }, "typeName": { - "id": 2560, + "id": 534, "keyType": { - "id": 2558, + "id": 532, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1884:4:5", + "src": "1767:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Mapping", - "src": "1876:21:5", + "src": "1759:21:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll)" }, "valueType": { "contractScope": null, - "id": 2559, + "id": 533, "name": "Poll", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2552, - "src": "1892:4:5", + "referencedDeclaration": 526, + "src": "1775:4:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage_ptr", + "typeIdentifier": "t_struct$_Poll_$526_storage_ptr", "typeString": "struct PLCRVoting.Poll" } } @@ -1887,11 +1886,11 @@ }, { "constant": false, - "id": 2565, + "id": 539, "name": "voteTokenBalance", "nodeType": "VariableDeclaration", - "scope": 3488, - "src": "1948:48:5", + "scope": 1471, + "src": "1829:48:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1899,28 +1898,28 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 2564, + "id": 538, "keyType": { - "id": 2562, + "id": 536, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1956:7:5", + "src": "1837:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1948:24:5", + "src": "1829:24:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 2563, + "id": 537, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1967:4:5", + "src": "1848:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1932,44 +1931,44 @@ }, { "constant": false, - "id": 2569, + "id": 543, "name": "dllMap", "nodeType": "VariableDeclaration", - "scope": 3488, - "src": "2047:35:5", + "scope": 1471, + "src": "1926:35:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data)" }, "typeName": { - "id": 2568, + "id": 542, "keyType": { - "id": 2566, + "id": 540, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2055:7:5", + "src": "1934:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "2047:28:5", + "src": "1926:28:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data)" }, "valueType": { "contractScope": null, - "id": 2567, + "id": 541, "name": "DLL.Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "2066:8:5", + "referencedDeclaration": 79, + "src": "1945:8:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } } @@ -1979,26 +1978,26 @@ }, { "constant": false, - "id": 2571, + "id": 545, "name": "store", "nodeType": "VariableDeclaration", - "scope": 3488, - "src": "2088:25:5", + "scope": 1471, + "src": "1965:25:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage", + "typeIdentifier": "t_struct$_Data_$6_storage", "typeString": "struct AttributeStore.Data" }, "typeName": { "contractScope": null, - "id": 2570, + "id": 544, "name": "AttributeStore.Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2113, - "src": "2088:19:5", + "referencedDeclaration": 6, + "src": "1965:19:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data" } }, @@ -2007,27 +2006,27 @@ }, { "constant": false, - "id": 2573, + "id": 547, "name": "token", "nodeType": "VariableDeclaration", - "scope": 3488, - "src": "2120:27:5", + "scope": 1471, + "src": "1995:18:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" }, "typeName": { "contractScope": null, - "id": 2572, - "name": "EIP20Interface", + "id": 546, + "name": "ERC20", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3782, - "src": "2120:14:5", + "referencedDeclaration": 408, + "src": "1995:5:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, "value": null, @@ -2035,29 +2034,29 @@ }, { "body": { - "id": 2588, + "id": 562, "nodeType": "Block", - "src": "2483:91:5", + "src": "2325:72:4", "statements": [ { "expression": { "argumentTypes": null, - "id": 2582, + "id": 556, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2578, + "id": 552, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "2493:5:5", + "referencedDeclaration": 547, + "src": "2331:5:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, "nodeType": "Assignment", @@ -2067,12 +2066,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2580, + "id": 554, "name": "_tokenAddr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2575, - "src": "2516:10:5", + "referencedDeclaration": 549, + "src": "2345:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2086,18 +2085,18 @@ "typeString": "address" } ], - "id": 2579, - "name": "EIP20Interface", + "id": 553, + "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3782, - "src": "2501:14:5", + "referencedDeclaration": 408, + "src": "2339:5:4", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_EIP20Interface_$3782_$", - "typeString": "type(contract EIP20Interface)" + "typeIdentifier": "t_type$_t_contract$_ERC20_$408_$", + "typeString": "type(contract ERC20)" } }, - "id": 2581, + "id": 555, "isConstant": false, "isLValue": false, "isPure": false, @@ -2105,38 +2104,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2501:26:5", + "src": "2339:17:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "src": "2493:34:5", + "src": "2331:25:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 2583, + "id": 557, "nodeType": "ExpressionStatement", - "src": "2493:34:5" + "src": "2331:25:4" }, { "expression": { "argumentTypes": null, - "id": 2586, + "id": 560, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2584, + "id": 558, "name": "pollNonce", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "2537:9:5", + "referencedDeclaration": 531, + "src": "2362:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2146,48 +2145,48 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2585, + "id": 559, "name": "INITIAL_POLL_NONCE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2555, - "src": "2549:18:5", + "referencedDeclaration": 529, + "src": "2374:18:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2537:30:5", + "src": "2362:30:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2587, + "id": 561, "nodeType": "ExpressionStatement", - "src": "2537:30:5" + "src": "2362:30:4" } ] }, "documentation": "@dev Initializes voteQuorum, commitDuration, revealDuration, and pollNonce in addition to token contract and trusted mapping\n@param _tokenAddr The address where the ERC20 token contract is deployed", - "id": 2589, + "id": 563, "implemented": true, "isConstructor": true, "isDeclaredConst": false, "modifiers": [], - "name": "PLCRVoting", + "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 2576, + "id": 550, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2575, + "id": 549, "name": "_tokenAddr", "nodeType": "VariableDeclaration", - "scope": 2589, - "src": "2456:18:5", + "scope": 563, + "src": "2298:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2195,10 +2194,10 @@ "typeString": "address" }, "typeName": { - "id": 2574, + "id": 548, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2456:7:5", + "src": "2298:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2208,26 +2207,26 @@ "visibility": "internal" } ], - "src": "2455:20:5" + "src": "2297:20:4" }, "payable": false, "returnParameters": { - "id": 2577, + "id": 551, "nodeType": "ParameterList", "parameters": [], - "src": "2483:0:5" + "src": "2325:0:4" }, - "scope": 3488, - "src": "2436:138:5", + "scope": 1471, + "src": "2286:111:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2627, + "id": 601, "nodeType": "Block", - "src": "2992:240:5", + "src": "2797:227:4", "statements": [ { "expression": { @@ -2239,7 +2238,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2601, + "id": 575, "isConstant": false, "isLValue": false, "isPure": false, @@ -2251,18 +2250,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2597, + "id": 571, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3026:3:5", + "referencedDeclaration": 3702, + "src": "2827:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2598, + "id": 572, "isConstant": false, "isLValue": false, "isPure": false, @@ -2270,7 +2269,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3026:10:5", + "src": "2827:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2286,32 +2285,32 @@ ], "expression": { "argumentTypes": null, - "id": 2595, + "id": 569, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "3010:5:5", + "referencedDeclaration": 547, + "src": "2811:5:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 2596, + "id": 570, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 3727, - "src": "3010:15:5", + "referencedDeclaration": 422, + "src": "2811:15:4", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 2599, + "id": 573, "isConstant": false, "isLValue": false, "isPure": false, @@ -2319,7 +2318,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3010:27:5", + "src": "2811:27:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2329,18 +2328,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 2600, + "id": 574, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "3041:10:5", + "referencedDeclaration": 565, + "src": "2842:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3010:41:5", + "src": "2811:41:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2354,21 +2353,21 @@ "typeString": "bool" } ], - "id": 2594, + "id": 568, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "3002:7:5", + "referencedDeclaration": 3705, + "src": "2803:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2602, + "id": 576, "isConstant": false, "isLValue": false, "isPure": false, @@ -2376,20 +2375,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3002:50:5", + "src": "2803:50:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2603, + "id": 577, "nodeType": "ExpressionStatement", - "src": "3002:50:5" + "src": "2803:50:4" }, { "expression": { "argumentTypes": null, - "id": 2609, + "id": 583, "isConstant": false, "isLValue": false, "isPure": false, @@ -2398,34 +2397,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2604, + "id": 578, "name": "voteTokenBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2565, - "src": "3062:16:5", + "referencedDeclaration": 539, + "src": "2859:16:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2607, + "id": 581, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2605, + "id": 579, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3079:3:5", + "referencedDeclaration": 3702, + "src": "2876:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2606, + "id": 580, "isConstant": false, "isLValue": false, "isPure": false, @@ -2433,7 +2432,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3079:10:5", + "src": "2876:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2444,7 +2443,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "3062:28:5", + "src": "2859:28:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2454,26 +2453,26 @@ "operator": "+=", "rightHandSide": { "argumentTypes": null, - "id": 2608, + "id": 582, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "3094:10:5", + "referencedDeclaration": 565, + "src": "2891:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3062:42:5", + "src": "2859:42:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2610, + "id": 584, "nodeType": "ExpressionStatement", - "src": "3062:42:5" + "src": "2859:42:4" }, { "expression": { @@ -2486,18 +2485,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2614, + "id": 588, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3141:3:5", + "referencedDeclaration": 3702, + "src": "2934:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2615, + "id": 589, "isConstant": false, "isLValue": false, "isPure": false, @@ -2505,7 +2504,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3141:10:5", + "src": "2934:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2513,25 +2512,25 @@ }, { "argumentTypes": null, - "id": 2616, + "id": 590, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3917, - "src": "3153:4:5", + "referencedDeclaration": 3725, + "src": "2946:4:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, { "argumentTypes": null, - "id": 2617, + "id": 591, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "3159:10:5", + "referencedDeclaration": 565, + "src": "2952:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2545,7 +2544,7 @@ "typeString": "address" }, { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" }, { @@ -2555,32 +2554,32 @@ ], "expression": { "argumentTypes": null, - "id": 2612, + "id": 586, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "3122:5:5", + "referencedDeclaration": 547, + "src": "2915:5:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 2613, + "id": 587, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 3747, - "src": "3122:18:5", + "referencedDeclaration": 390, + "src": "2915:18:4", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 2618, + "id": 592, "isConstant": false, "isLValue": false, "isPure": false, @@ -2588,7 +2587,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3122:48:5", + "src": "2915:48:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2602,21 +2601,21 @@ "typeString": "bool" } ], - "id": 2611, + "id": 585, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "3114:7:5", + "referencedDeclaration": 3705, + "src": "2907:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2619, + "id": 593, "isConstant": false, "isLValue": false, "isPure": false, @@ -2624,28 +2623,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3114:57:5", + "src": "2907:57:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2620, + "id": 594, "nodeType": "ExpressionStatement", - "src": "3114:57:5" + "src": "2907:57:4" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2622, + "id": 596, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "3202:10:5", + "referencedDeclaration": 565, + "src": "2996:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2655,18 +2654,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2623, + "id": 597, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3214:3:5", + "referencedDeclaration": 3702, + "src": "3008:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2624, + "id": 598, "isConstant": false, "isLValue": false, "isPure": false, @@ -2674,7 +2673,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3214:10:5", + "src": "3008:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2692,18 +2691,18 @@ "typeString": "address" } ], - "id": 2621, + "id": 595, "name": "_VotingRightsGranted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2512, - "src": "3181:20:5", + "referencedDeclaration": 486, + "src": "2975:20:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,address)" } }, - "id": 2625, + "id": 599, "isConstant": false, "isLValue": false, "isPure": false, @@ -2711,20 +2710,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3181:44:5", + "src": "2975:44:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2626, - "nodeType": "ExpressionStatement", - "src": "3181:44:5" + "id": 600, + "nodeType": "EmitStatement", + "src": "2970:49:4" } ] }, "documentation": "@notice Loads _numTokens ERC20 tokens into the voting contract for one-to-one voting rights\n@dev Assumes that msg.sender has approved voting contract to spend on their behalf\n@param _numTokens The number of votingTokens desired in exchange for ERC20 tokens", - "id": 2628, + "id": 602, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -2732,16 +2731,16 @@ "name": "requestVotingRights", "nodeType": "FunctionDefinition", "parameters": { - "id": 2592, + "id": 566, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2591, + "id": 565, "name": "_numTokens", "nodeType": "VariableDeclaration", - "scope": 2628, - "src": "2966:15:5", + "scope": 602, + "src": "2771:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2749,10 +2748,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2590, + "id": 564, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2966:4:5", + "src": "2771:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2762,39 +2761,39 @@ "visibility": "internal" } ], - "src": "2965:17:5" + "src": "2770:17:4" }, "payable": false, "returnParameters": { - "id": 2593, + "id": 567, "nodeType": "ParameterList", "parameters": [], - "src": "2992:0:5" + "src": "2797:0:4" }, - "scope": 3488, - "src": "2937:295:5", + "scope": 1471, + "src": "2742:282:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 2674, + "id": 648, "nodeType": "Block", - "src": "3496:314:5", + "src": "3278:297:4", "statements": [ { "assignments": [ - 2634 + 608 ], "declarations": [ { "constant": false, - "id": 2634, + "id": 608, "name": "availableTokens", "nodeType": "VariableDeclaration", - "scope": 2675, - "src": "3506:20:5", + "scope": 649, + "src": "3284:20:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2802,10 +2801,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2633, + "id": 607, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3506:4:5", + "src": "3284:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2815,7 +2814,7 @@ "visibility": "internal" } ], - "id": 2645, + "id": 619, "initialValue": { "argumentTypes": null, "arguments": [ @@ -2826,18 +2825,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2641, + "id": 615, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3578:3:5", + "referencedDeclaration": 3702, + "src": "3356:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2642, + "id": 616, "isConstant": false, "isLValue": false, "isPure": false, @@ -2845,7 +2844,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3578:10:5", + "src": "3356:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2859,18 +2858,18 @@ "typeString": "address" } ], - "id": 2640, + "id": 614, "name": "getLockedTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3389, - "src": "3562:15:5", + "referencedDeclaration": 1369, + "src": "3340:15:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 2643, + "id": 617, "isConstant": false, "isLValue": false, "isPure": false, @@ -2878,7 +2877,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3562:27:5", + "src": "3340:27:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2896,34 +2895,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2635, + "id": 609, "name": "voteTokenBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2565, - "src": "3529:16:5", + "referencedDeclaration": 539, + "src": "3307:16:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2638, + "id": 612, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2636, + "id": 610, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3546:3:5", + "referencedDeclaration": 3702, + "src": "3324:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2637, + "id": 611, "isConstant": false, "isLValue": false, "isPure": false, @@ -2931,7 +2930,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3546:10:5", + "src": "3324:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2942,27 +2941,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3529:28:5", + "src": "3307:28:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2639, + "id": 613, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 3852, - "src": "3529:32:5", + "referencedDeclaration": 3662, + "src": "3307:32:4", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 2644, + "id": 618, "isConstant": false, "isLValue": false, "isPure": false, @@ -2970,14 +2969,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3529:61:5", + "src": "3307:61:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "3506:84:5" + "src": "3284:84:4" }, { "expression": { @@ -2989,19 +2988,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2649, + "id": 623, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2647, + "id": 621, "name": "availableTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2634, - "src": "3608:15:5", + "referencedDeclaration": 608, + "src": "3382:15:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3011,18 +3010,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 2648, + "id": 622, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "3627:10:5", + "referencedDeclaration": 604, + "src": "3401:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3608:29:5", + "src": "3382:29:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3036,21 +3035,21 @@ "typeString": "bool" } ], - "id": 2646, + "id": 620, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "3600:7:5", + "referencedDeclaration": 3705, + "src": "3374:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2650, + "id": 624, "isConstant": false, "isLValue": false, "isPure": false, @@ -3058,20 +3057,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3600:38:5", + "src": "3374:38:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2651, + "id": 625, "nodeType": "ExpressionStatement", - "src": "3600:38:5" + "src": "3374:38:4" }, { "expression": { "argumentTypes": null, - "id": 2657, + "id": 631, "isConstant": false, "isLValue": false, "isPure": false, @@ -3080,34 +3079,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2652, + "id": 626, "name": "voteTokenBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2565, - "src": "3648:16:5", + "referencedDeclaration": 539, + "src": "3418:16:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2655, + "id": 629, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2653, + "id": 627, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3665:3:5", + "referencedDeclaration": 3702, + "src": "3435:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2654, + "id": 628, "isConstant": false, "isLValue": false, "isPure": false, @@ -3115,7 +3114,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3665:10:5", + "src": "3435:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3126,7 +3125,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "3648:28:5", + "src": "3418:28:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3136,26 +3135,26 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 2656, + "id": 630, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "3680:10:5", + "referencedDeclaration": 604, + "src": "3450:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3648:42:5", + "src": "3418:42:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2658, + "id": 632, "nodeType": "ExpressionStatement", - "src": "3648:42:5" + "src": "3418:42:4" }, { "expression": { @@ -3168,18 +3167,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2662, + "id": 636, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3723:3:5", + "referencedDeclaration": 3702, + "src": "3489:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2663, + "id": 637, "isConstant": false, "isLValue": false, "isPure": false, @@ -3187,7 +3186,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3723:10:5", + "src": "3489:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3195,12 +3194,12 @@ }, { "argumentTypes": null, - "id": 2664, + "id": 638, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "3735:10:5", + "referencedDeclaration": 604, + "src": "3501:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3220,32 +3219,32 @@ ], "expression": { "argumentTypes": null, - "id": 2660, + "id": 634, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "3708:5:5", + "referencedDeclaration": 547, + "src": "3474:5:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 2661, + "id": 635, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "3708:14:5", + "referencedDeclaration": 431, + "src": "3474:14:4", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 2665, + "id": 639, "isConstant": false, "isLValue": false, "isPure": false, @@ -3253,7 +3252,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3708:38:5", + "src": "3474:38:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3267,21 +3266,21 @@ "typeString": "bool" } ], - "id": 2659, + "id": 633, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "3700:7:5", + "referencedDeclaration": 3705, + "src": "3466:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2666, + "id": 640, "isConstant": false, "isLValue": false, "isPure": false, @@ -3289,28 +3288,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3700:47:5", + "src": "3466:47:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2667, + "id": 641, "nodeType": "ExpressionStatement", - "src": "3700:47:5" + "src": "3466:47:4" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2669, + "id": 643, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "3780:10:5", + "referencedDeclaration": 604, + "src": "3547:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3320,18 +3319,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2670, + "id": 644, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3792:3:5", + "referencedDeclaration": 3702, + "src": "3559:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2671, + "id": 645, "isConstant": false, "isLValue": false, "isPure": false, @@ -3339,7 +3338,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3792:10:5", + "src": "3559:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3357,18 +3356,18 @@ "typeString": "address" } ], - "id": 2668, + "id": 642, "name": "_VotingRightsWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2518, - "src": "3757:22:5", + "referencedDeclaration": 492, + "src": "3524:22:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,address)" } }, - "id": 2672, + "id": 646, "isConstant": false, "isLValue": false, "isPure": false, @@ -3376,20 +3375,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3757:46:5", + "src": "3524:46:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2673, - "nodeType": "ExpressionStatement", - "src": "3757:46:5" + "id": 647, + "nodeType": "EmitStatement", + "src": "3519:51:4" } ] }, "documentation": "@notice Withdraw _numTokens ERC20 tokens from the voting contract, revoking these voting rights\n@param _numTokens The number of ERC20 tokens desired in exchange for voting rights", - "id": 2675, + "id": 649, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -3397,16 +3396,16 @@ "name": "withdrawVotingRights", "nodeType": "FunctionDefinition", "parameters": { - "id": 2631, + "id": 605, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2630, + "id": 604, "name": "_numTokens", "nodeType": "VariableDeclaration", - "scope": 2675, - "src": "3470:15:5", + "scope": 649, + "src": "3252:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3414,10 +3413,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2629, + "id": 603, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3470:4:5", + "src": "3252:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3427,26 +3426,26 @@ "visibility": "internal" } ], - "src": "3469:17:5" + "src": "3251:17:4" }, "payable": false, "returnParameters": { - "id": 2632, + "id": 606, "nodeType": "ParameterList", "parameters": [], - "src": "3496:0:5" + "src": "3278:0:4" }, - "scope": 3488, - "src": "3440:370:5", + "scope": 1471, + "src": "3222:353:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 2713, + "id": 687, "nodeType": "Block", - "src": "4017:212:5", + "src": "3772:199:4", "statements": [ { "expression": { @@ -3461,26 +3460,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2682, + "id": 656, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "4045:7:5", + "referencedDeclaration": 535, + "src": "3796:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2684, + "id": 658, "indexExpression": { "argumentTypes": null, - "id": 2683, + "id": 657, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2677, - "src": "4053:7:5", + "referencedDeclaration": 651, + "src": "3804:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3491,21 +3490,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4045:16:5", + "src": "3796:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2685, + "id": 659, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "revealEndDate", "nodeType": "MemberAccess", - "referencedDeclaration": 2537, - "src": "4045:30:5", + "referencedDeclaration": 511, + "src": "3796:30:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3519,18 +3518,18 @@ "typeString": "uint256" } ], - "id": 2681, + "id": 655, "name": "isExpired", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3472, - "src": "4035:9:5", + "referencedDeclaration": 1452, + "src": "3786:9:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 2686, + "id": 660, "isConstant": false, "isLValue": false, "isPure": false, @@ -3538,7 +3537,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4035:41:5", + "src": "3786:41:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3552,21 +3551,21 @@ "typeString": "bool" } ], - "id": 2680, + "id": 654, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4027:7:5", + "referencedDeclaration": 3705, + "src": "3778:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2687, + "id": 661, "isConstant": false, "isLValue": false, "isPure": false, @@ -3574,15 +3573,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4027:50:5", + "src": "3778:50:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2688, + "id": 662, "nodeType": "ExpressionStatement", - "src": "4027:50:5" + "src": "3778:50:4" }, { "expression": { @@ -3593,12 +3592,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2695, + "id": 669, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2677, - "src": "4123:7:5", + "referencedDeclaration": 651, + "src": "3870:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3616,34 +3615,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2690, + "id": 664, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "4095:6:5", + "referencedDeclaration": 543, + "src": "3842:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 2693, + "id": 667, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2691, + "id": 665, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4102:3:5", + "referencedDeclaration": 3702, + "src": "3849:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2692, + "id": 666, "isConstant": false, "isLValue": false, "isPure": false, @@ -3651,7 +3650,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4102:10:5", + "src": "3849:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3662,27 +3661,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4095:18:5", + "src": "3842:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 2694, + "id": 668, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "contains", "nodeType": "MemberAccess", - "referencedDeclaration": 2254, - "src": "4095:27:5", + "referencedDeclaration": 153, + "src": "3842:27:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (bool)" } }, - "id": 2696, + "id": 670, "isConstant": false, "isLValue": false, "isPure": false, @@ -3690,7 +3689,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4095:36:5", + "src": "3842:36:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3704,21 +3703,21 @@ "typeString": "bool" } ], - "id": 2689, + "id": 663, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4087:7:5", + "referencedDeclaration": 3705, + "src": "3834:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2697, + "id": 671, "isConstant": false, "isLValue": false, "isPure": false, @@ -3726,15 +3725,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4087:45:5", + "src": "3834:45:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2698, + "id": 672, "nodeType": "ExpressionStatement", - "src": "4087:45:5" + "src": "3834:45:4" }, { "expression": { @@ -3742,12 +3741,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2704, + "id": 678, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2677, - "src": "4169:7:5", + "referencedDeclaration": 651, + "src": "3912:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3765,34 +3764,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2699, + "id": 673, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "4143:6:5", + "referencedDeclaration": 543, + "src": "3886:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 2702, + "id": 676, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2700, + "id": 674, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4150:3:5", + "referencedDeclaration": 3702, + "src": "3893:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2701, + "id": 675, "isConstant": false, "isLValue": false, "isPure": false, @@ -3800,7 +3799,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4150:10:5", + "src": "3893:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3811,27 +3810,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4143:18:5", + "src": "3886:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 2703, + "id": 677, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "remove", "nodeType": "MemberAccess", - "referencedDeclaration": 2465, - "src": "4143:25:5", + "referencedDeclaration": 364, + "src": "3886:25:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256)" } }, - "id": 2705, + "id": 679, "isConstant": false, "isLValue": false, "isPure": false, @@ -3839,28 +3838,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4143:34:5", + "src": "3886:34:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2706, + "id": 680, "nodeType": "ExpressionStatement", - "src": "4143:34:5" + "src": "3886:34:4" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2708, + "id": 682, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2677, - "src": "4202:7:5", + "referencedDeclaration": 651, + "src": "3946:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3870,18 +3869,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2709, + "id": 683, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4211:3:5", + "referencedDeclaration": 3702, + "src": "3955:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2710, + "id": 684, "isConstant": false, "isLValue": false, "isPure": false, @@ -3889,7 +3888,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4211:10:5", + "src": "3955:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3907,18 +3906,18 @@ "typeString": "address" } ], - "id": 2707, + "id": 681, "name": "_TokensRescued", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2524, - "src": "4187:14:5", + "referencedDeclaration": 498, + "src": "3931:14:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,address)" } }, - "id": 2711, + "id": 685, "isConstant": false, "isLValue": false, "isPure": false, @@ -3926,20 +3925,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4187:35:5", + "src": "3931:35:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2712, - "nodeType": "ExpressionStatement", - "src": "4187:35:5" + "id": 686, + "nodeType": "EmitStatement", + "src": "3926:40:4" } ] }, "documentation": "@dev Unlocks tokens locked in unrevealed vote where poll has ended\n@param _pollID Integer identifier associated with the target poll", - "id": 2714, + "id": 688, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -3947,16 +3946,16 @@ "name": "rescueTokens", "nodeType": "FunctionDefinition", "parameters": { - "id": 2678, + "id": 652, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2677, + "id": 651, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 2714, - "src": "3994:12:5", + "scope": 688, + "src": "3749:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3964,10 +3963,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2676, + "id": 650, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3994:4:5", + "src": "3749:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3977,26 +3976,26 @@ "visibility": "internal" } ], - "src": "3993:14:5" + "src": "3748:14:4" }, "payable": false, "returnParameters": { - "id": 2679, + "id": 653, "nodeType": "ParameterList", "parameters": [], - "src": "4017:0:5" + "src": "3772:0:4" }, - "scope": 3488, - "src": "3972:257:5", + "scope": 1471, + "src": "3727:244:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 2849, + "id": 823, "nodeType": "Block", - "src": "4913:1095:5", + "src": "4655:1092:4", "statements": [ { "expression": { @@ -4007,12 +4006,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2727, + "id": 701, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "4950:7:5", + "referencedDeclaration": 690, + "src": "4688:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4026,18 +4025,18 @@ "typeString": "uint256" } ], - "id": 2726, + "id": 700, "name": "commitPeriodActive", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3229, - "src": "4931:18:5", + "referencedDeclaration": 1209, + "src": "4669:18:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 2728, + "id": 702, "isConstant": false, "isLValue": false, "isPure": false, @@ -4045,7 +4044,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4931:27:5", + "src": "4669:27:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4059,21 +4058,21 @@ "typeString": "bool" } ], - "id": 2725, + "id": 699, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4923:7:5", + "referencedDeclaration": 3705, + "src": "4661:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2729, + "id": 703, "isConstant": false, "isLValue": false, "isPure": false, @@ -4081,15 +4080,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4923:36:5", + "src": "4661:36:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2730, + "id": 704, "nodeType": "ExpressionStatement", - "src": "4923:36:5" + "src": "4661:36:4" }, { "expression": { @@ -4101,7 +4100,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2737, + "id": 711, "isConstant": false, "isLValue": false, "isPure": false, @@ -4110,34 +4109,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2732, + "id": 706, "name": "voteTokenBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2565, - "src": "4977:16:5", + "referencedDeclaration": 539, + "src": "4711:16:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2735, + "id": 709, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2733, + "id": 707, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4994:3:5", + "referencedDeclaration": 3702, + "src": "4728:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2734, + "id": 708, "isConstant": false, "isLValue": false, "isPure": false, @@ -4145,7 +4144,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4994:10:5", + "src": "4728:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4156,7 +4155,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4977:28:5", + "src": "4711:28:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4166,18 +4165,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 2736, + "id": 710, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2720, - "src": "5009:10:5", + "referencedDeclaration": 694, + "src": "4743:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4977:42:5", + "src": "4711:42:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4191,21 +4190,21 @@ "typeString": "bool" } ], - "id": 2731, + "id": 705, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4969:7:5", + "referencedDeclaration": 3705, + "src": "4703:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2738, + "id": 712, "isConstant": false, "isLValue": false, "isPure": false, @@ -4213,15 +4212,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4969:51:5", + "src": "4703:51:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2739, + "id": 713, "nodeType": "ExpressionStatement", - "src": "4969:51:5" + "src": "4703:51:4" }, { "expression": { @@ -4233,19 +4232,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2743, + "id": 717, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2741, + "id": 715, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "5072:7:5", + "referencedDeclaration": 690, + "src": "4802:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4256,14 +4255,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2742, + "id": 716, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5083:1:5", + "src": "4813:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -4271,7 +4270,7 @@ }, "value": "0" }, - "src": "5072:12:5", + "src": "4802:12:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4285,21 +4284,21 @@ "typeString": "bool" } ], - "id": 2740, + "id": 714, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5064:7:5", + "referencedDeclaration": 3705, + "src": "4794:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2744, + "id": 718, "isConstant": false, "isLValue": false, "isPure": false, @@ -4307,15 +4306,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5064:21:5", + "src": "4794:21:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2745, + "id": 719, "nodeType": "ExpressionStatement", - "src": "5064:21:5" + "src": "4794:21:4" }, { "expression": { @@ -4327,7 +4326,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2757, + "id": 731, "isConstant": false, "isLValue": false, "isPure": false, @@ -4338,19 +4337,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2749, + "id": 723, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2747, + "id": 721, "name": "_prevPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2722, - "src": "5256:11:5", + "referencedDeclaration": 696, + "src": "4978:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4361,14 +4360,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2748, + "id": 722, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5271:1:5", + "src": "4993:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -4376,7 +4375,7 @@ }, "value": "0" }, - "src": "5256:16:5", + "src": "4978:16:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4389,12 +4388,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2755, + "id": 729, "name": "_prevPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2722, - "src": "5304:11:5", + "referencedDeclaration": 696, + "src": "5026:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4412,34 +4411,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2750, + "id": 724, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "5276:6:5", + "referencedDeclaration": 543, + "src": "4998:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 2753, + "id": 727, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2751, + "id": 725, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5283:3:5", + "referencedDeclaration": 3702, + "src": "5005:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2752, + "id": 726, "isConstant": false, "isLValue": false, "isPure": false, @@ -4447,7 +4446,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5283:10:5", + "src": "5005:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4458,27 +4457,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5276:18:5", + "src": "4998:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 2754, + "id": 728, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "contains", "nodeType": "MemberAccess", - "referencedDeclaration": 2254, - "src": "5276:27:5", + "referencedDeclaration": 153, + "src": "4998:27:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (bool)" } }, - "id": 2756, + "id": 730, "isConstant": false, "isLValue": false, "isPure": false, @@ -4486,13 +4485,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5276:40:5", + "src": "4998:40:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "5256:60:5", + "src": "4978:60:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4506,21 +4505,21 @@ "typeString": "bool" } ], - "id": 2746, + "id": 720, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5248:7:5", + "referencedDeclaration": 3705, + "src": "4970:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2758, + "id": 732, "isConstant": false, "isLValue": false, "isPure": false, @@ -4528,28 +4527,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5248:69:5", + "src": "4970:69:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2759, + "id": 733, "nodeType": "ExpressionStatement", - "src": "5248:69:5" + "src": "4970:69:4" }, { "assignments": [ - 2761 + 735 ], "declarations": [ { "constant": false, - "id": 2761, + "id": 735, "name": "nextPollID", "nodeType": "VariableDeclaration", - "scope": 2850, - "src": "5328:15:5", + "scope": 824, + "src": "5046:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4557,10 +4556,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2760, + "id": 734, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5328:4:5", + "src": "5046:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4570,18 +4569,18 @@ "visibility": "internal" } ], - "id": 2769, + "id": 743, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2767, + "id": 741, "name": "_prevPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2722, - "src": "5373:11:5", + "referencedDeclaration": 696, + "src": "5091:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4599,34 +4598,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2762, + "id": 736, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "5346:6:5", + "referencedDeclaration": 543, + "src": "5064:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 2765, + "id": 739, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2763, + "id": 737, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5353:3:5", + "referencedDeclaration": 3702, + "src": "5071:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2764, + "id": 738, "isConstant": false, "isLValue": false, "isPure": false, @@ -4634,7 +4633,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5353:10:5", + "src": "5071:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4645,27 +4644,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5346:18:5", + "src": "5064:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 2766, + "id": 740, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "getNext", "nodeType": "MemberAccess", - "referencedDeclaration": 2270, - "src": "5346:26:5", + "referencedDeclaration": 169, + "src": "5064:26:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2768, + "id": 742, "isConstant": false, "isLValue": false, "isPure": false, @@ -4673,31 +4672,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5346:39:5", + "src": "5064:39:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "5328:57:5" + "src": "5046:57:4" }, { "expression": { "argumentTypes": null, - "id": 2784, + "id": 758, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2770, + "id": 744, "name": "nextPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2761, - "src": "5468:10:5", + "referencedDeclaration": 735, + "src": "5178:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4716,19 +4715,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2773, + "id": 747, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2771, + "id": 745, "name": "nextPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2761, - "src": "5482:10:5", + "referencedDeclaration": 735, + "src": "5192:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4738,32 +4737,32 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2772, + "id": 746, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "5496:7:5", + "referencedDeclaration": 690, + "src": "5206:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5482:21:5", + "src": "5192:21:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2774, + "id": 748, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "5481:23:5", + "src": "5191:23:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4771,35 +4770,35 @@ }, "falseExpression": { "argumentTypes": null, - "id": 2782, + "id": 756, "name": "nextPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2761, - "src": "5545:10:5", + "referencedDeclaration": 735, + "src": "5255:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2783, + "id": 757, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "5481:74:5", + "src": "5191:74:4", "trueExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2780, + "id": 754, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "5534:7:5", + "referencedDeclaration": 690, + "src": "5244:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4817,34 +4816,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2775, + "id": 749, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "5507:6:5", + "referencedDeclaration": 543, + "src": "5217:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 2778, + "id": 752, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2776, + "id": 750, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5514:3:5", + "referencedDeclaration": 3702, + "src": "5224:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2777, + "id": 751, "isConstant": false, "isLValue": false, "isPure": false, @@ -4852,7 +4851,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5514:10:5", + "src": "5224:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4863,27 +4862,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5507:18:5", + "src": "5217:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 2779, + "id": 753, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "getNext", "nodeType": "MemberAccess", - "referencedDeclaration": 2270, - "src": "5507:26:5", + "referencedDeclaration": 169, + "src": "5217:26:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2781, + "id": 755, "isConstant": false, "isLValue": false, "isPure": false, @@ -4891,7 +4890,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5507:35:5", + "src": "5217:35:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4902,15 +4901,15 @@ "typeString": "uint256" } }, - "src": "5468:87:5", + "src": "5178:87:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2785, + "id": 759, "nodeType": "ExpressionStatement", - "src": "5468:87:5" + "src": "5178:87:4" }, { "expression": { @@ -4921,12 +4920,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2788, + "id": 762, "name": "_prevPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2722, - "src": "5588:11:5", + "referencedDeclaration": 696, + "src": "5310:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4934,12 +4933,12 @@ }, { "argumentTypes": null, - "id": 2789, + "id": 763, "name": "nextPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2761, - "src": "5601:10:5", + "referencedDeclaration": 735, + "src": "5331:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4949,18 +4948,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2790, + "id": 764, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5613:3:5", + "referencedDeclaration": 3702, + "src": "5352:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2791, + "id": 765, "isConstant": false, "isLValue": false, "isPure": false, @@ -4968,7 +4967,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5613:10:5", + "src": "5352:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4976,12 +4975,12 @@ }, { "argumentTypes": null, - "id": 2792, + "id": 766, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2720, - "src": "5625:10:5", + "referencedDeclaration": 694, + "src": "5372:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5007,18 +5006,18 @@ "typeString": "uint256" } ], - "id": 2787, + "id": 761, "name": "validPosition", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2892, - "src": "5574:13:5", + "referencedDeclaration": 866, + "src": "5287:13:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256,uint256,address,uint256) view returns (bool)" } }, - "id": 2793, + "id": 767, "isConstant": false, "isLValue": false, "isPure": false, @@ -5026,7 +5025,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5574:62:5", + "src": "5287:103:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5040,21 +5039,21 @@ "typeString": "bool" } ], - "id": 2786, + "id": 760, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5566:7:5", + "referencedDeclaration": 3705, + "src": "5272:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2794, + "id": 768, "isConstant": false, "isLValue": false, "isPure": false, @@ -5062,15 +5061,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5566:71:5", + "src": "5272:124:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2795, + "id": 769, "nodeType": "ExpressionStatement", - "src": "5566:71:5" + "src": "5272:124:4" }, { "expression": { @@ -5078,12 +5077,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2801, + "id": 775, "name": "_prevPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2722, - "src": "5673:11:5", + "referencedDeclaration": 696, + "src": "5429:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5091,12 +5090,12 @@ }, { "argumentTypes": null, - "id": 2802, + "id": 776, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "5686:7:5", + "referencedDeclaration": 690, + "src": "5442:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5104,12 +5103,12 @@ }, { "argumentTypes": null, - "id": 2803, + "id": 777, "name": "nextPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2761, - "src": "5695:10:5", + "referencedDeclaration": 735, + "src": "5451:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5135,34 +5134,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2796, + "id": 770, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "5647:6:5", + "referencedDeclaration": 543, + "src": "5403:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 2799, + "id": 773, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2797, + "id": 771, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5654:3:5", + "referencedDeclaration": 3702, + "src": "5410:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2798, + "id": 772, "isConstant": false, "isLValue": false, "isPure": false, @@ -5170,7 +5169,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5654:10:5", + "src": "5410:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5181,27 +5180,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5647:18:5", + "src": "5403:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 2800, + "id": 774, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "insert", "nodeType": "MemberAccess", - "referencedDeclaration": 2411, - "src": "5647:25:5", + "referencedDeclaration": 310, + "src": "5403:25:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256,uint256,uint256)" } }, - "id": 2804, + "id": 778, "isConstant": false, "isLValue": false, "isPure": false, @@ -5209,28 +5208,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5647:59:5", + "src": "5403:59:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2805, + "id": 779, "nodeType": "ExpressionStatement", - "src": "5647:59:5" + "src": "5403:59:4" }, { "assignments": [ - 2807 + 781 ], "declarations": [ { "constant": false, - "id": 2807, + "id": 781, "name": "UUID", "nodeType": "VariableDeclaration", - "scope": 2850, - "src": "5717:12:5", + "scope": 824, + "src": "5469:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5238,10 +5237,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2806, + "id": 780, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5717:7:5", + "src": "5469:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5251,7 +5250,7 @@ "visibility": "internal" } ], - "id": 2813, + "id": 787, "initialValue": { "argumentTypes": null, "arguments": [ @@ -5259,18 +5258,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2809, + "id": 783, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5741:3:5", + "referencedDeclaration": 3702, + "src": "5493:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2810, + "id": 784, "isConstant": false, "isLValue": false, "isPure": false, @@ -5278,7 +5277,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5741:10:5", + "src": "5493:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5286,12 +5285,12 @@ }, { "argumentTypes": null, - "id": 2811, + "id": 785, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "5753:7:5", + "referencedDeclaration": 690, + "src": "5505:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5309,18 +5308,18 @@ "typeString": "uint256" } ], - "id": 2808, + "id": 782, "name": "attrUUID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3487, - "src": "5732:8:5", + "referencedDeclaration": 1470, + "src": "5484:8:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_address_$_t_uint256_$returns$_t_bytes32_$", "typeString": "function (address,uint256) pure returns (bytes32)" } }, - "id": 2812, + "id": 786, "isConstant": false, "isLValue": false, "isPure": false, @@ -5328,14 +5327,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5732:29:5", + "src": "5484:29:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "5717:44:5" + "src": "5469:44:4" }, { "expression": { @@ -5343,12 +5342,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2817, + "id": 791, "name": "UUID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2807, - "src": "5791:4:5", + "referencedDeclaration": 781, + "src": "5539:4:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5357,14 +5356,14 @@ { "argumentTypes": null, "hexValue": "6e756d546f6b656e73", - "id": 2818, + "id": 792, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5797:11:5", + "src": "5545:11:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_aaabf4403cd242796b0e69a57762477ad48e1fa250247ff93eeada3e5b75581a", @@ -5374,12 +5373,12 @@ }, { "argumentTypes": null, - "id": 2819, + "id": 793, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2720, - "src": "5810:10:5", + "referencedDeclaration": 694, + "src": "5558:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5403,32 +5402,32 @@ ], "expression": { "argumentTypes": null, - "id": 2814, + "id": 788, "name": "store", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2571, - "src": "5772:5:5", + "referencedDeclaration": 545, + "src": "5520:5:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage", + "typeIdentifier": "t_struct$_Data_$6_storage", "typeString": "struct AttributeStore.Data storage ref" } }, - "id": 2816, + "id": 790, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "setAttribute", "nodeType": "MemberAccess", - "referencedDeclaration": 2164, - "src": "5772:18:5", + "referencedDeclaration": 63, + "src": "5520:18:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$2113_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$2113_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$6_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$6_storage_ptr_$", "typeString": "function (struct AttributeStore.Data storage pointer,bytes32,string memory,uint256)" } }, - "id": 2820, + "id": 794, "isConstant": false, "isLValue": false, "isPure": false, @@ -5436,15 +5435,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5772:49:5", + "src": "5520:49:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2821, + "id": 795, "nodeType": "ExpressionStatement", - "src": "5772:49:5" + "src": "5520:49:4" }, { "expression": { @@ -5452,12 +5451,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2825, + "id": 799, "name": "UUID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2807, - "src": "5850:4:5", + "referencedDeclaration": 781, + "src": "5594:4:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5466,14 +5465,14 @@ { "argumentTypes": null, "hexValue": "636f6d6d697448617368", - "id": 2826, + "id": 800, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5856:12:5", + "src": "5600:12:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_207714604a0440a484c6569f8718c59de7b49b2f64c69153d0c80360597b39a3", @@ -5486,12 +5485,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2828, + "id": 802, "name": "_secretHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2718, - "src": "5875:11:5", + "referencedDeclaration": 692, + "src": "5619:11:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5505,20 +5504,20 @@ "typeString": "bytes32" } ], - "id": 2827, + "id": 801, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5870:4:5", + "src": "5614:4:4", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": "uint" }, - "id": 2829, + "id": 803, "isConstant": false, "isLValue": false, "isPure": false, @@ -5526,7 +5525,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5870:17:5", + "src": "5614:17:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5550,32 +5549,32 @@ ], "expression": { "argumentTypes": null, - "id": 2822, + "id": 796, "name": "store", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2571, - "src": "5831:5:5", + "referencedDeclaration": 545, + "src": "5575:5:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage", + "typeIdentifier": "t_struct$_Data_$6_storage", "typeString": "struct AttributeStore.Data storage ref" } }, - "id": 2824, + "id": 798, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "setAttribute", "nodeType": "MemberAccess", - "referencedDeclaration": 2164, - "src": "5831:18:5", + "referencedDeclaration": 63, + "src": "5575:18:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$2113_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$2113_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$6_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$6_storage_ptr_$", "typeString": "function (struct AttributeStore.Data storage pointer,bytes32,string memory,uint256)" } }, - "id": 2830, + "id": 804, "isConstant": false, "isLValue": false, "isPure": false, @@ -5583,20 +5582,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5831:57:5", + "src": "5575:57:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2831, + "id": 805, "nodeType": "ExpressionStatement", - "src": "5831:57:5" + "src": "5575:57:4" }, { "expression": { "argumentTypes": null, - "id": 2840, + "id": 814, "isConstant": false, "isLValue": false, "isPure": false, @@ -5609,26 +5608,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2832, + "id": 806, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "5899:7:5", + "referencedDeclaration": 535, + "src": "5639:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2834, + "id": 808, "indexExpression": { "argumentTypes": null, - "id": 2833, + "id": 807, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "5907:7:5", + "referencedDeclaration": 690, + "src": "5647:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5639,43 +5638,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5899:16:5", + "src": "5639:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2835, + "id": 809, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "didCommit", "nodeType": "MemberAccess", - "referencedDeclaration": 2547, - "src": "5899:26:5", + "referencedDeclaration": 521, + "src": "5639:26:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 2838, + "id": 812, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2836, + "id": 810, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5926:3:5", + "referencedDeclaration": 3702, + "src": "5666:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2837, + "id": 811, "isConstant": false, "isLValue": false, "isPure": false, @@ -5683,7 +5682,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5926:10:5", + "src": "5666:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5694,7 +5693,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5899:38:5", + "src": "5639:38:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5705,14 +5704,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 2839, + "id": 813, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5940:4:5", + "src": "5680:4:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -5720,28 +5719,28 @@ }, "value": "true" }, - "src": "5899:45:5", + "src": "5639:45:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 2841, + "id": 815, "nodeType": "ExpressionStatement", - "src": "5899:45:5" + "src": "5639:45:4" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2843, + "id": 817, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "5969:7:5", + "referencedDeclaration": 690, + "src": "5710:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5749,12 +5748,12 @@ }, { "argumentTypes": null, - "id": 2844, + "id": 818, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2720, - "src": "5978:10:5", + "referencedDeclaration": 694, + "src": "5719:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5764,18 +5763,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2845, + "id": 819, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5990:3:5", + "referencedDeclaration": 3702, + "src": "5731:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2846, + "id": 820, "isConstant": false, "isLValue": false, "isPure": false, @@ -5783,7 +5782,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5990:10:5", + "src": "5731:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5805,18 +5804,18 @@ "typeString": "address" } ], - "id": 2842, + "id": 816, "name": "_VoteCommitted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2480, - "src": "5954:14:5", + "referencedDeclaration": 454, + "src": "5695:14:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,uint256,address)" } }, - "id": 2847, + "id": 821, "isConstant": false, "isLValue": false, "isPure": false, @@ -5824,20 +5823,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5954:47:5", + "src": "5695:47:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2848, - "nodeType": "ExpressionStatement", - "src": "5954:47:5" + "id": 822, + "nodeType": "EmitStatement", + "src": "5690:52:4" } ] }, "documentation": "@notice Commits vote using hash of choice and secret salt to conceal vote until reveal\n@param _pollID Integer identifier associated with target poll\n@param _secretHash Commit keccak256 hash of voter's choice and salt (tightly packed in this order)\n@param _numTokens The number of tokens to be committed towards the target poll\n@param _prevPollID The ID of the poll that the user has voted the maximum number of tokens in which is still less than or equal to numTokens", - "id": 2850, + "id": 824, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -5845,16 +5844,16 @@ "name": "commitVote", "nodeType": "FunctionDefinition", "parameters": { - "id": 2723, + "id": 697, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2716, + "id": 690, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 2850, - "src": "4834:12:5", + "scope": 824, + "src": "4559:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5862,10 +5861,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2715, + "id": 689, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4834:4:5", + "src": "4559:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5876,11 +5875,11 @@ }, { "constant": false, - "id": 2718, + "id": 692, "name": "_secretHash", "nodeType": "VariableDeclaration", - "scope": 2850, - "src": "4848:19:5", + "scope": 824, + "src": "4577:19:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5888,10 +5887,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2717, + "id": 691, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4848:7:5", + "src": "4577:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5902,11 +5901,11 @@ }, { "constant": false, - "id": 2720, + "id": 694, "name": "_numTokens", "nodeType": "VariableDeclaration", - "scope": 2850, - "src": "4869:15:5", + "scope": 824, + "src": "4602:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5914,10 +5913,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2719, + "id": 693, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4869:4:5", + "src": "4602:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5928,11 +5927,11 @@ }, { "constant": false, - "id": 2722, + "id": 696, "name": "_prevPollID", "nodeType": "VariableDeclaration", - "scope": 2850, - "src": "4886:16:5", + "scope": 824, + "src": "4623:16:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5940,10 +5939,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2721, + "id": 695, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4886:4:5", + "src": "4623:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5953,39 +5952,39 @@ "visibility": "internal" } ], - "src": "4833:70:5" + "src": "4553:90:4" }, "payable": false, "returnParameters": { - "id": 2724, + "id": 698, "nodeType": "ParameterList", "parameters": [], - "src": "4913:0:5" + "src": "4655:0:4" }, - "scope": 3488, - "src": "4814:1194:5", + "scope": 1471, + "src": "4534:1213:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 2891, + "id": 865, "nodeType": "Block", - "src": "6635:278:5", + "src": "6374:260:4", "statements": [ { "assignments": [ - 2864 + 838 ], "declarations": [ { "constant": false, - "id": 2864, + "id": 838, "name": "prevValid", "nodeType": "VariableDeclaration", - "scope": 2892, - "src": "6645:14:5", + "scope": 866, + "src": "6380:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5993,10 +5992,10 @@ "typeString": "bool" }, "typeName": { - "id": 2863, + "id": 837, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6645:4:5", + "src": "6380:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6006,7 +6005,7 @@ "visibility": "internal" } ], - "id": 2872, + "id": 846, "initialValue": { "argumentTypes": null, "components": [ @@ -6016,19 +6015,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2870, + "id": 844, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2865, + "id": 839, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2858, - "src": "6663:10:5", + "referencedDeclaration": 832, + "src": "6398:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6041,12 +6040,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2867, + "id": 841, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2856, - "src": "6690:6:5", + "referencedDeclaration": 830, + "src": "6425:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6054,12 +6053,12 @@ }, { "argumentTypes": null, - "id": 2868, + "id": 842, "name": "_prevID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2852, - "src": "6698:7:5", + "referencedDeclaration": 826, + "src": "6433:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6077,18 +6076,18 @@ "typeString": "uint256" } ], - "id": 2866, + "id": 840, "name": "getNumTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3359, - "src": "6677:12:5", + "referencedDeclaration": 1339, + "src": "6412:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, - "id": 2869, + "id": 843, "isConstant": false, "isLValue": false, "isPure": false, @@ -6096,47 +6095,47 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6677:29:5", + "src": "6412:29:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6663:43:5", + "src": "6398:43:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2871, + "id": 845, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "6662:45:5", + "src": "6397:45:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "6645:62:5" + "src": "6380:62:4" }, { "assignments": [ - 2874 + 848 ], "declarations": [ { "constant": false, - "id": 2874, + "id": 848, "name": "nextValid", "nodeType": "VariableDeclaration", - "scope": 2892, - "src": "6789:14:5", + "scope": 866, + "src": "6516:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6144,10 +6143,10 @@ "typeString": "bool" }, "typeName": { - "id": 2873, + "id": 847, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6789:4:5", + "src": "6516:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6157,7 +6156,7 @@ "visibility": "internal" } ], - "id": 2886, + "id": 860, "initialValue": { "argumentTypes": null, "components": [ @@ -6167,7 +6166,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2884, + "id": 858, "isConstant": false, "isLValue": false, "isPure": false, @@ -6178,19 +6177,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2880, + "id": 854, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2875, + "id": 849, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2858, - "src": "6807:10:5", + "referencedDeclaration": 832, + "src": "6534:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6203,12 +6202,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2877, + "id": 851, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2856, - "src": "6834:6:5", + "referencedDeclaration": 830, + "src": "6561:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6216,12 +6215,12 @@ }, { "argumentTypes": null, - "id": 2878, + "id": 852, "name": "_nextID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2854, - "src": "6842:7:5", + "referencedDeclaration": 828, + "src": "6569:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6239,18 +6238,18 @@ "typeString": "uint256" } ], - "id": 2876, + "id": 850, "name": "getNumTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3359, - "src": "6821:12:5", + "referencedDeclaration": 1339, + "src": "6548:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, - "id": 2879, + "id": 853, "isConstant": false, "isLValue": false, "isPure": false, @@ -6258,13 +6257,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6821:29:5", + "src": "6548:29:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6807:43:5", + "src": "6534:43:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6278,19 +6277,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2883, + "id": 857, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2881, + "id": 855, "name": "_nextID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2854, - "src": "6854:7:5", + "referencedDeclaration": 828, + "src": "6581:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6301,14 +6300,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2882, + "id": 856, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6865:1:5", + "src": "6592:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -6316,34 +6315,34 @@ }, "value": "0" }, - "src": "6854:12:5", + "src": "6581:12:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6807:59:5", + "src": "6534:59:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2885, + "id": 859, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "6806:61:5", + "src": "6533:61:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "6789:78:5" + "src": "6516:78:4" }, { "expression": { @@ -6352,19 +6351,19 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2889, + "id": 863, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2887, + "id": 861, "name": "prevValid", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2864, - "src": "6884:9:5", + "referencedDeclaration": 838, + "src": "6607:9:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6374,32 +6373,32 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 2888, + "id": 862, "name": "nextValid", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2874, - "src": "6897:9:5", + "referencedDeclaration": 848, + "src": "6620:9:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6884:22:5", + "src": "6607:22:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 2862, - "id": 2890, + "functionReturnParameters": 836, + "id": 864, "nodeType": "Return", - "src": "6877:29:5" + "src": "6600:29:4" } ] }, "documentation": "@dev Compares previous and next poll's committed tokens for sorting purposes\n@param _prevID Integer identifier associated with previous poll in sorted order\n@param _nextID Integer identifier associated with next poll in sorted order\n@param _voter Address of user to check DLL position for\n@param _numTokens The number of tokens to be committed towards the poll (used for sorting)\n@return valid Boolean indication of if the specified position maintains the sort", - "id": 2892, + "id": 866, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -6407,16 +6406,16 @@ "name": "validPosition", "nodeType": "FunctionDefinition", "parameters": { - "id": 2859, + "id": 833, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2852, + "id": 826, "name": "_prevID", "nodeType": "VariableDeclaration", - "scope": 2892, - "src": "6537:12:5", + "scope": 866, + "src": "6263:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6424,10 +6423,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2851, + "id": 825, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6537:4:5", + "src": "6263:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6438,11 +6437,11 @@ }, { "constant": false, - "id": 2854, + "id": 828, "name": "_nextID", "nodeType": "VariableDeclaration", - "scope": 2892, - "src": "6551:12:5", + "scope": 866, + "src": "6281:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6450,10 +6449,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2853, + "id": 827, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6551:4:5", + "src": "6281:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6464,11 +6463,11 @@ }, { "constant": false, - "id": 2856, + "id": 830, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 2892, - "src": "6565:14:5", + "scope": 866, + "src": "6299:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6476,10 +6475,10 @@ "typeString": "address" }, "typeName": { - "id": 2855, + "id": 829, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6565:7:5", + "src": "6299:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6490,11 +6489,11 @@ }, { "constant": false, - "id": 2858, + "id": 832, "name": "_numTokens", "nodeType": "VariableDeclaration", - "scope": 2892, - "src": "6581:15:5", + "scope": 866, + "src": "6319:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6502,10 +6501,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2857, + "id": 831, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6581:4:5", + "src": "6319:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6515,20 +6514,20 @@ "visibility": "internal" } ], - "src": "6536:61:5" + "src": "6257:81:4" }, "payable": false, "returnParameters": { - "id": 2862, + "id": 836, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2861, + "id": 835, "name": "valid", "nodeType": "VariableDeclaration", - "scope": 2892, - "src": "6623:10:5", + "scope": 866, + "src": "6360:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6536,10 +6535,10 @@ "typeString": "bool" }, "typeName": { - "id": 2860, + "id": 834, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6623:4:5", + "src": "6360:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6549,19 +6548,19 @@ "visibility": "internal" } ], - "src": "6622:12:5" + "src": "6359:12:4" }, - "scope": 3488, - "src": "6514:399:5", + "scope": 1471, + "src": "6235:399:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3003, + "id": 980, "nodeType": "Block", - "src": "7348:1065:5", + "src": "7055:1062:4", "statements": [ { "expression": { @@ -6572,12 +6571,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2903, + "id": 877, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "7434:7:5", + "referencedDeclaration": 868, + "src": "7133:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6591,18 +6590,18 @@ "typeString": "uint256" } ], - "id": 2902, + "id": 876, "name": "revealPeriodActive", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3256, - "src": "7415:18:5", + "referencedDeclaration": 1236, + "src": "7114:18:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 2904, + "id": 878, "isConstant": false, "isLValue": false, "isPure": false, @@ -6610,7 +6609,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7415:27:5", + "src": "7114:27:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6624,21 +6623,21 @@ "typeString": "bool" } ], - "id": 2901, + "id": 875, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "7407:7:5", + "referencedDeclaration": 3705, + "src": "7106:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2905, + "id": 879, "isConstant": false, "isLValue": false, "isPure": false, @@ -6646,15 +6645,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7407:36:5", + "src": "7106:36:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2906, + "id": 880, "nodeType": "ExpressionStatement", - "src": "7407:36:5" + "src": "7106:36:4" }, { "expression": { @@ -6668,26 +6667,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2908, + "id": 882, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "7461:7:5", + "referencedDeclaration": 535, + "src": "7156:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2910, + "id": 884, "indexExpression": { "argumentTypes": null, - "id": 2909, + "id": 883, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "7469:7:5", + "referencedDeclaration": 868, + "src": "7164:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6698,43 +6697,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7461:16:5", + "src": "7156:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2911, + "id": 885, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "didCommit", "nodeType": "MemberAccess", - "referencedDeclaration": 2547, - "src": "7461:26:5", + "referencedDeclaration": 521, + "src": "7156:26:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 2914, + "id": 888, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2912, + "id": 886, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "7488:3:5", + "referencedDeclaration": 3702, + "src": "7183:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2913, + "id": 887, "isConstant": false, "isLValue": false, "isPure": false, @@ -6742,7 +6741,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7488:10:5", + "src": "7183:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6753,7 +6752,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7461:38:5", + "src": "7156:38:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6767,21 +6766,21 @@ "typeString": "bool" } ], - "id": 2907, + "id": 881, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "7453:7:5", + "referencedDeclaration": 3705, + "src": "7148:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2915, + "id": 889, "isConstant": false, "isLValue": false, "isPure": false, @@ -6789,15 +6788,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7453:47:5", + "src": "7148:47:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2916, + "id": 890, "nodeType": "ExpressionStatement", - "src": "7453:47:5" + "src": "7148:47:4" }, { "expression": { @@ -6805,7 +6804,7 @@ "arguments": [ { "argumentTypes": null, - "id": 2925, + "id": 899, "isConstant": false, "isLValue": false, "isPure": false, @@ -6813,7 +6812,7 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "7595:39:5", + "src": "7286:39:4", "subExpression": { "argumentTypes": null, "baseExpression": { @@ -6822,26 +6821,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2918, + "id": 892, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "7596:7:5", + "referencedDeclaration": 535, + "src": "7287:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2920, + "id": 894, "indexExpression": { "argumentTypes": null, - "id": 2919, + "id": 893, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "7604:7:5", + "referencedDeclaration": 868, + "src": "7295:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6852,43 +6851,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7596:16:5", + "src": "7287:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2921, + "id": 895, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "didReveal", "nodeType": "MemberAccess", - "referencedDeclaration": 2551, - "src": "7596:26:5", + "referencedDeclaration": 525, + "src": "7287:26:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 2924, + "id": 898, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2922, + "id": 896, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "7623:3:5", + "referencedDeclaration": 3702, + "src": "7314:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2923, + "id": 897, "isConstant": false, "isLValue": false, "isPure": false, @@ -6896,7 +6895,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7623:10:5", + "src": "7314:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6907,7 +6906,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7596:38:5", + "src": "7287:38:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6926,21 +6925,21 @@ "typeString": "bool" } ], - "id": 2917, + "id": 891, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "7587:7:5", + "referencedDeclaration": 3705, + "src": "7278:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2926, + "id": 900, "isConstant": false, "isLValue": false, "isPure": false, @@ -6948,15 +6947,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7587:48:5", + "src": "7278:48:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2927, + "id": 901, "nodeType": "ExpressionStatement", - "src": "7587:48:5" + "src": "7278:48:4" }, { "expression": { @@ -6968,7 +6967,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 2938, + "id": 915, "isConstant": false, "isLValue": false, "isPure": false, @@ -6978,54 +6977,106 @@ "arguments": [ { "argumentTypes": null, - "id": 2930, - "name": "_voteOption", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2896, - "src": "7732:11:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 2931, - "name": "_salt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2898, - "src": "7745:5:5", + "arguments": [ + { + "argumentTypes": null, + "id": 906, + "name": "_voteOption", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 870, + "src": "7436:11:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 907, + "name": "_salt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 872, + "src": "7449:5:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 904, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "7419:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 905, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "7419:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 908, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7419:36:4", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2929, + "id": 903, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "7722:9:5", + "referencedDeclaration": 3696, + "src": "7409:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2932, + "id": 909, "isConstant": false, "isLValue": false, "isPure": false, @@ -7033,7 +7084,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7722:29:5", + "src": "7409:47:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7048,18 +7099,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2934, + "id": 911, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "7769:3:5", + "referencedDeclaration": 3702, + "src": "7474:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2935, + "id": 912, "isConstant": false, "isLValue": false, "isPure": false, @@ -7067,7 +7118,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7769:10:5", + "src": "7474:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7075,12 +7126,12 @@ }, { "argumentTypes": null, - "id": 2936, + "id": 913, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "7781:7:5", + "referencedDeclaration": 868, + "src": "7486:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7098,18 +7149,18 @@ "typeString": "uint256" } ], - "id": 2933, + "id": 910, "name": "getCommitHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3340, - "src": "7755:13:5", + "referencedDeclaration": 1320, + "src": "7460:13:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_bytes32_$", "typeString": "function (address,uint256) view returns (bytes32)" } }, - "id": 2937, + "id": 914, "isConstant": false, "isLValue": false, "isPure": false, @@ -7117,13 +7168,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7755:34:5", + "src": "7460:34:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "7722:67:5", + "src": "7409:85:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7137,21 +7188,21 @@ "typeString": "bool" } ], - "id": 2928, + "id": 902, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "7714:7:5", + "referencedDeclaration": 3705, + "src": "7401:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2939, + "id": 916, "isConstant": false, "isLValue": false, "isPure": false, @@ -7159,28 +7210,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7714:76:5", + "src": "7401:94:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2940, + "id": 917, "nodeType": "ExpressionStatement", - "src": "7714:76:5" + "src": "7401:94:4" }, { "assignments": [ - 2942 + 919 ], "declarations": [ { "constant": false, - "id": 2942, + "id": 919, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 3004, - "src": "7862:14:5", + "scope": 981, + "src": "7563:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7188,10 +7239,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2941, + "id": 918, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7862:4:5", + "src": "7563:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7201,7 +7252,7 @@ "visibility": "internal" } ], - "id": 2948, + "id": 925, "initialValue": { "argumentTypes": null, "arguments": [ @@ -7209,18 +7260,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2944, + "id": 921, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "7892:3:5", + "referencedDeclaration": 3702, + "src": "7593:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2945, + "id": 922, "isConstant": false, "isLValue": false, "isPure": false, @@ -7228,7 +7279,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7892:10:5", + "src": "7593:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7236,12 +7287,12 @@ }, { "argumentTypes": null, - "id": 2946, + "id": 923, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "7904:7:5", + "referencedDeclaration": 868, + "src": "7605:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7259,18 +7310,18 @@ "typeString": "uint256" } ], - "id": 2943, + "id": 920, "name": "getNumTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3359, - "src": "7879:12:5", + "referencedDeclaration": 1339, + "src": "7580:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, - "id": 2947, + "id": 924, "isConstant": false, "isLValue": false, "isPure": false, @@ -7278,14 +7329,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7879:33:5", + "src": "7580:33:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "7862:50:5" + "src": "7563:50:4" }, { "condition": { @@ -7294,19 +7345,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2951, + "id": 928, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2949, + "id": 926, "name": "_voteOption", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2896, - "src": "7927:11:5", + "referencedDeclaration": 870, + "src": "7624:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7317,14 +7368,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "31", - "id": 2950, + "id": 927, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7942:1:5", + "src": "7639:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -7332,21 +7383,21 @@ }, "value": "1" }, - "src": "7927:16:5", + "src": "7624:16:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 2967, + "id": 944, "nodeType": "Block", - "src": "8059:67:5", + "src": "7746:57:4", "statements": [ { "expression": { "argumentTypes": null, - "id": 2965, + "id": 942, "isConstant": false, "isLValue": false, "isPure": false, @@ -7357,26 +7408,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2960, + "id": 937, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "8073:7:5", + "referencedDeclaration": 535, + "src": "7754:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2962, + "id": 939, "indexExpression": { "argumentTypes": null, - "id": 2961, + "id": 938, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "8081:7:5", + "referencedDeclaration": 868, + "src": "7762:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7387,21 +7438,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8073:16:5", + "src": "7754:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2963, + "id": 940, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "votesAgainst", "nodeType": "MemberAccess", - "referencedDeclaration": 2543, - "src": "8073:29:5", + "referencedDeclaration": 517, + "src": "7754:29:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7411,41 +7462,41 @@ "operator": "+=", "rightHandSide": { "argumentTypes": null, - "id": 2964, + "id": 941, "name": "numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2942, - "src": "8106:9:5", + "referencedDeclaration": 919, + "src": "7787:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8073:42:5", + "src": "7754:42:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2966, + "id": 943, "nodeType": "ExpressionStatement", - "src": "8073:42:5" + "src": "7754:42:4" } ] }, - "id": 2968, + "id": 945, "nodeType": "IfStatement", - "src": "7923:203:5", + "src": "7620:183:4", "trueBody": { - "id": 2959, + "id": 936, "nodeType": "Block", - "src": "7945:108:5", + "src": "7642:98:4", "statements": [ { "expression": { "argumentTypes": null, - "id": 2957, + "id": 934, "isConstant": false, "isLValue": false, "isPure": false, @@ -7456,26 +7507,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2952, + "id": 929, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "8004:7:5", + "referencedDeclaration": 535, + "src": "7695:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2954, + "id": 931, "indexExpression": { "argumentTypes": null, - "id": 2953, + "id": 930, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "8012:7:5", + "referencedDeclaration": 868, + "src": "7703:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7486,21 +7537,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8004:16:5", + "src": "7695:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2955, + "id": 932, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "votesFor", "nodeType": "MemberAccess", - "referencedDeclaration": 2541, - "src": "8004:25:5", + "referencedDeclaration": 515, + "src": "7695:25:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7510,26 +7561,26 @@ "operator": "+=", "rightHandSide": { "argumentTypes": null, - "id": 2956, + "id": 933, "name": "numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2942, - "src": "8033:9:5", + "referencedDeclaration": 919, + "src": "7724:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8004:38:5", + "src": "7695:38:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2958, + "id": 935, "nodeType": "ExpressionStatement", - "src": "8004:38:5" + "src": "7695:38:4" } ] } @@ -7540,12 +7591,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2974, + "id": 951, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "8162:7:5", + "referencedDeclaration": 868, + "src": "7835:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7563,34 +7614,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2969, + "id": 946, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "8136:6:5", + "referencedDeclaration": 543, + "src": "7809:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 2972, + "id": 949, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2970, + "id": 947, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "8143:3:5", + "referencedDeclaration": 3702, + "src": "7816:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2971, + "id": 948, "isConstant": false, "isLValue": false, "isPure": false, @@ -7598,7 +7649,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "8143:10:5", + "src": "7816:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7609,27 +7660,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8136:18:5", + "src": "7809:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 2973, + "id": 950, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "remove", "nodeType": "MemberAccess", - "referencedDeclaration": 2465, - "src": "8136:25:5", + "referencedDeclaration": 364, + "src": "7809:25:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256)" } }, - "id": 2975, + "id": 952, "isConstant": false, "isLValue": false, "isPure": false, @@ -7637,20 +7688,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8136:34:5", + "src": "7809:34:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2976, + "id": 953, "nodeType": "ExpressionStatement", - "src": "8136:34:5" + "src": "7809:34:4" }, { "expression": { "argumentTypes": null, - "id": 2985, + "id": 962, "isConstant": false, "isLValue": false, "isPure": false, @@ -7663,26 +7714,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2977, + "id": 954, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "8234:7:5", + "referencedDeclaration": 535, + "src": "7903:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2979, + "id": 956, "indexExpression": { "argumentTypes": null, - "id": 2978, + "id": 955, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "8242:7:5", + "referencedDeclaration": 868, + "src": "7911:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7693,43 +7744,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8234:16:5", + "src": "7903:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2980, + "id": 957, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "didReveal", "nodeType": "MemberAccess", - "referencedDeclaration": 2551, - "src": "8234:26:5", + "referencedDeclaration": 525, + "src": "7903:26:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 2983, + "id": 960, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2981, + "id": 958, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "8261:3:5", + "referencedDeclaration": 3702, + "src": "7930:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2982, + "id": 959, "isConstant": false, "isLValue": false, "isPure": false, @@ -7737,7 +7788,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "8261:10:5", + "src": "7930:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7748,7 +7799,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "8234:38:5", + "src": "7903:38:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7759,14 +7810,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 2984, + "id": 961, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "8275:4:5", + "src": "7944:4:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -7774,28 +7825,28 @@ }, "value": "true" }, - "src": "8234:45:5", + "src": "7903:45:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 2986, + "id": 963, "nodeType": "ExpressionStatement", - "src": "8234:45:5" + "src": "7903:45:4" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2988, + "id": 965, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "8304:7:5", + "referencedDeclaration": 868, + "src": "7981:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7803,12 +7854,12 @@ }, { "argumentTypes": null, - "id": 2989, + "id": 966, "name": "numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2942, - "src": "8313:9:5", + "referencedDeclaration": 919, + "src": "7996:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7820,26 +7871,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2990, + "id": 967, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "8324:7:5", + "referencedDeclaration": 535, + "src": "8013:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2992, + "id": 969, "indexExpression": { "argumentTypes": null, - "id": 2991, + "id": 968, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "8332:7:5", + "referencedDeclaration": 868, + "src": "8021:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7850,21 +7901,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8324:16:5", + "src": "8013:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2993, + "id": 970, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "votesFor", "nodeType": "MemberAccess", - "referencedDeclaration": 2541, - "src": "8324:25:5", + "referencedDeclaration": 515, + "src": "8013:25:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7876,26 +7927,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2994, + "id": 971, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "8351:7:5", + "referencedDeclaration": 535, + "src": "8046:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2996, + "id": 973, "indexExpression": { "argumentTypes": null, - "id": 2995, + "id": 972, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "8359:7:5", + "referencedDeclaration": 868, + "src": "8054:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7906,21 +7957,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8351:16:5", + "src": "8046:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2997, + "id": 974, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "votesAgainst", "nodeType": "MemberAccess", - "referencedDeclaration": 2543, - "src": "8351:29:5", + "referencedDeclaration": 517, + "src": "8046:29:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7928,12 +7979,12 @@ }, { "argumentTypes": null, - "id": 2998, + "id": 975, "name": "_voteOption", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2896, - "src": "8382:11:5", + "referencedDeclaration": 870, + "src": "8083:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7943,18 +7994,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2999, + "id": 976, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "8395:3:5", + "referencedDeclaration": 3702, + "src": "8096:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3000, + "id": 977, "isConstant": false, "isLValue": false, "isPure": false, @@ -7962,7 +8013,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "8395:10:5", + "src": "8096:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7996,18 +8047,18 @@ "typeString": "address" } ], - "id": 2987, + "id": 964, "name": "_VoteRevealed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2494, - "src": "8290:13:5", + "referencedDeclaration": 468, + "src": "7960:13:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,uint256,uint256,uint256,uint256,address)" } }, - "id": 3001, + "id": 978, "isConstant": false, "isLValue": false, "isPure": false, @@ -8015,20 +8066,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8290:116:5", + "src": "7960:152:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3002, - "nodeType": "ExpressionStatement", - "src": "8290:116:5" + "id": 979, + "nodeType": "EmitStatement", + "src": "7955:157:4" } ] }, "documentation": "@notice Reveals vote with choice and secret salt used in generating commitHash to attribute committed tokens\n@param _pollID Integer identifier associated with target poll\n@param _voteOption Vote choice used to generate commitHash for associated poll\n@param _salt Secret number used to generate commitHash for associated poll", - "id": 3004, + "id": 981, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -8036,16 +8087,16 @@ "name": "revealVote", "nodeType": "FunctionDefinition", "parameters": { - "id": 2899, + "id": 873, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2894, + "id": 868, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3004, - "src": "7295:12:5", + "scope": 981, + "src": "7002:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8053,10 +8104,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2893, + "id": 867, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7295:4:5", + "src": "7002:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8067,11 +8118,11 @@ }, { "constant": false, - "id": 2896, + "id": 870, "name": "_voteOption", "nodeType": "VariableDeclaration", - "scope": 3004, - "src": "7309:16:5", + "scope": 981, + "src": "7016:16:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8079,10 +8130,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2895, + "id": 869, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7309:4:5", + "src": "7016:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8093,11 +8144,11 @@ }, { "constant": false, - "id": 2898, + "id": 872, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 3004, - "src": "7327:10:5", + "scope": 981, + "src": "7034:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8105,10 +8156,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2897, + "id": 871, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7327:4:5", + "src": "7034:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8118,26 +8169,26 @@ "visibility": "internal" } ], - "src": "7294:44:5" + "src": "7001:44:4" }, "payable": false, "returnParameters": { - "id": 2900, + "id": 874, "nodeType": "ParameterList", "parameters": [], - "src": "7348:0:5" + "src": "7055:0:4" }, - "scope": 3488, - "src": "7275:1138:5", + "scope": 1471, + "src": "6982:1135:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 3064, + "id": 1044, "nodeType": "Block", - "src": "8754:368:5", + "src": "8442:356:4", "statements": [ { "expression": { @@ -8148,12 +8199,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3017, + "id": 994, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3008, - "src": "8782:7:5", + "referencedDeclaration": 985, + "src": "8466:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8167,18 +8218,18 @@ "typeString": "uint256" } ], - "id": 3016, + "id": 993, "name": "pollEnded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3207, - "src": "8772:9:5", + "referencedDeclaration": 1187, + "src": "8456:9:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3018, + "id": 995, "isConstant": false, "isLValue": false, "isPure": false, @@ -8186,7 +8237,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8772:18:5", + "src": "8456:18:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8200,21 +8251,21 @@ "typeString": "bool" } ], - "id": 3015, + "id": 992, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "8764:7:5", + "referencedDeclaration": 3705, + "src": "8448:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3019, + "id": 996, "isConstant": false, "isLValue": false, "isPure": false, @@ -8222,15 +8273,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8764:27:5", + "src": "8448:27:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3020, + "id": 997, "nodeType": "ExpressionStatement", - "src": "8764:27:5" + "src": "8448:27:4" }, { "expression": { @@ -8244,26 +8295,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3022, + "id": 999, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "8809:7:5", + "referencedDeclaration": 535, + "src": "8489:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3024, + "id": 1001, "indexExpression": { "argumentTypes": null, - "id": 3023, + "id": 1000, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3008, - "src": "8817:7:5", + "referencedDeclaration": 985, + "src": "8497:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8274,35 +8325,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8809:16:5", + "src": "8489:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3025, + "id": 1002, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "didReveal", "nodeType": "MemberAccess", - "referencedDeclaration": 2551, - "src": "8809:26:5", + "referencedDeclaration": 525, + "src": "8489:26:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 3027, + "id": 1004, "indexExpression": { "argumentTypes": null, - "id": 3026, + "id": 1003, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3006, - "src": "8836:6:5", + "referencedDeclaration": 983, + "src": "8516:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8313,7 +8364,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8809:34:5", + "src": "8489:34:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8327,21 +8378,21 @@ "typeString": "bool" } ], - "id": 3021, + "id": 998, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "8801:7:5", + "referencedDeclaration": 3705, + "src": "8481:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3028, + "id": 1005, "isConstant": false, "isLValue": false, "isPure": false, @@ -8349,28 +8400,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8801:43:5", + "src": "8481:43:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3029, + "id": 1006, "nodeType": "ExpressionStatement", - "src": "8801:43:5" + "src": "8481:43:4" }, { "assignments": [ - 3031 + 1008 ], "declarations": [ { "constant": false, - "id": 3031, + "id": 1008, "name": "winningChoice", "nodeType": "VariableDeclaration", - "scope": 3065, - "src": "8855:18:5", + "scope": 1045, + "src": "8531:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8378,10 +8429,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3030, + "id": 1007, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8855:4:5", + "src": "8531:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8391,7 +8442,7 @@ "visibility": "internal" } ], - "id": 3038, + "id": 1015, "initialValue": { "argumentTypes": null, "condition": { @@ -8399,12 +8450,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3033, + "id": 1010, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3008, - "src": "8885:7:5", + "referencedDeclaration": 985, + "src": "8561:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8418,18 +8469,18 @@ "typeString": "uint256" } ], - "id": 3032, + "id": 1009, "name": "isPassed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3158, - "src": "8876:8:5", + "referencedDeclaration": 1138, + "src": "8552:8:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3034, + "id": 1011, "isConstant": false, "isLValue": false, "isPure": false, @@ -8437,7 +8488,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8876:17:5", + "src": "8552:17:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8446,14 +8497,14 @@ "falseExpression": { "argumentTypes": null, "hexValue": "30", - "id": 3036, + "id": 1013, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8900:1:5", + "src": "8576:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -8461,24 +8512,24 @@ }, "value": "0" }, - "id": 3037, + "id": 1014, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "8876:25:5", + "src": "8552:25:4", "trueExpression": { "argumentTypes": null, "hexValue": "31", - "id": 3035, + "id": 1012, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8896:1:5", + "src": "8572:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -8492,20 +8543,20 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "8855:46:5" + "src": "8531:46:4" }, { "assignments": [ - 3040 + 1017 ], "declarations": [ { "constant": false, - "id": 3040, + "id": 1017, "name": "winnerHash", "nodeType": "VariableDeclaration", - "scope": 3065, - "src": "8911:18:5", + "scope": 1045, + "src": "8583:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8513,10 +8564,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3039, + "id": 1016, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "8911:7:5", + "src": "8583:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8526,60 +8577,112 @@ "visibility": "internal" } ], - "id": 3045, + "id": 1025, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3042, - "name": "winningChoice", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3031, - "src": "8942:13:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 3043, - "name": "_salt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3010, - "src": "8957:5:5", + "arguments": [ + { + "argumentTypes": null, + "id": 1021, + "name": "winningChoice", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1008, + "src": "8631:13:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 1022, + "name": "_salt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 987, + "src": "8646:5:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1019, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "8614:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1020, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "8614:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1023, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8614:38:4", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 3041, + "id": 1018, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "8932:9:5", + "referencedDeclaration": 3696, + "src": "8604:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 3044, + "id": 1024, "isConstant": false, "isLValue": false, "isPure": false, @@ -8587,27 +8690,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8932:31:5", + "src": "8604:49:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "8911:52:5" + "src": "8583:70:4" }, { "assignments": [ - 3047 + 1027 ], "declarations": [ { "constant": false, - "id": 3047, + "id": 1027, "name": "commitHash", "nodeType": "VariableDeclaration", - "scope": 3065, - "src": "8973:18:5", + "scope": 1045, + "src": "8659:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8615,10 +8718,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3046, + "id": 1026, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "8973:7:5", + "src": "8659:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8628,18 +8731,18 @@ "visibility": "internal" } ], - "id": 3052, + "id": 1032, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3049, + "id": 1029, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3006, - "src": "9008:6:5", + "referencedDeclaration": 983, + "src": "8694:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8647,12 +8750,12 @@ }, { "argumentTypes": null, - "id": 3050, + "id": 1030, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3008, - "src": "9016:7:5", + "referencedDeclaration": 985, + "src": "8702:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8670,18 +8773,18 @@ "typeString": "uint256" } ], - "id": 3048, + "id": 1028, "name": "getCommitHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3340, - "src": "8994:13:5", + "referencedDeclaration": 1320, + "src": "8680:13:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_bytes32_$", "typeString": "function (address,uint256) view returns (bytes32)" } }, - "id": 3051, + "id": 1031, "isConstant": false, "isLValue": false, "isPure": false, @@ -8689,14 +8792,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8994:30:5", + "src": "8680:30:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "8973:51:5" + "src": "8659:51:4" }, { "expression": { @@ -8708,19 +8811,19 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 3056, + "id": 1036, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3054, + "id": 1034, "name": "winnerHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3040, - "src": "9043:10:5", + "referencedDeclaration": 1017, + "src": "8725:10:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8730,18 +8833,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 3055, + "id": 1035, "name": "commitHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3047, - "src": "9057:10:5", + "referencedDeclaration": 1027, + "src": "8739:10:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "9043:24:5", + "src": "8725:24:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8755,21 +8858,21 @@ "typeString": "bool" } ], - "id": 3053, + "id": 1033, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "9035:7:5", + "referencedDeclaration": 3705, + "src": "8717:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3057, + "id": 1037, "isConstant": false, "isLValue": false, "isPure": false, @@ -8777,15 +8880,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9035:33:5", + "src": "8717:33:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3058, + "id": 1038, "nodeType": "ExpressionStatement", - "src": "9035:33:5" + "src": "8717:33:4" }, { "expression": { @@ -8793,12 +8896,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3060, + "id": 1040, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3006, - "src": "9099:6:5", + "referencedDeclaration": 983, + "src": "8777:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8806,12 +8909,12 @@ }, { "argumentTypes": null, - "id": 3061, + "id": 1041, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3008, - "src": "9107:7:5", + "referencedDeclaration": 985, + "src": "8785:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8829,18 +8932,18 @@ "typeString": "uint256" } ], - "id": 3059, + "id": 1039, "name": "getNumTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3359, - "src": "9086:12:5", + "referencedDeclaration": 1339, + "src": "8764:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, - "id": 3062, + "id": 1042, "isConstant": false, "isLValue": false, "isPure": false, @@ -8848,21 +8951,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9086:29:5", + "src": "8764:29:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3014, - "id": 3063, + "functionReturnParameters": 991, + "id": 1043, "nodeType": "Return", - "src": "9079:36:5" + "src": "8757:36:4" } ] }, "documentation": "@param _pollID Integer identifier associated with target poll\n@param _salt Arbitrarily chosen integer used to generate secretHash\n@return correctVotes Number of tokens voted for winning option", - "id": 3065, + "id": 1045, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -8870,16 +8973,16 @@ "name": "getNumPassingTokens", "nodeType": "FunctionDefinition", "parameters": { - "id": 3011, + "id": 988, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3006, + "id": 983, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3065, - "src": "8668:14:5", + "scope": 1045, + "src": "8360:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8887,10 +8990,10 @@ "typeString": "address" }, "typeName": { - "id": 3005, + "id": 982, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8668:7:5", + "src": "8360:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8901,11 +9004,11 @@ }, { "constant": false, - "id": 3008, + "id": 985, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3065, - "src": "8684:12:5", + "scope": 1045, + "src": "8376:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8913,10 +9016,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3007, + "id": 984, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8684:4:5", + "src": "8376:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8927,11 +9030,11 @@ }, { "constant": false, - "id": 3010, + "id": 987, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 3065, - "src": "8698:10:5", + "scope": 1045, + "src": "8390:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8939,10 +9042,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3009, + "id": 986, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8698:4:5", + "src": "8390:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8952,20 +9055,20 @@ "visibility": "internal" } ], - "src": "8667:42:5" + "src": "8359:42:4" }, "payable": false, "returnParameters": { - "id": 3014, + "id": 991, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3013, + "id": 990, "name": "correctVotes", "nodeType": "VariableDeclaration", - "scope": 3065, - "src": "8735:17:5", + "scope": 1045, + "src": "8423:17:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8973,10 +9076,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3012, + "id": 989, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8735:4:5", + "src": "8423:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8986,36 +9089,36 @@ "visibility": "internal" } ], - "src": "8734:19:5" + "src": "8422:19:4" }, - "scope": 3488, - "src": "8639:483:5", + "scope": 1471, + "src": "8331:467:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3120, + "id": 1100, "nodeType": "Block", - "src": "9671:513:5", + "src": "9327:495:4", "statements": [ { "expression": { "argumentTypes": null, - "id": 3080, + "id": 1060, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 3076, + "id": 1056, "name": "pollNonce", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "9681:9:5", + "referencedDeclaration": 531, + "src": "9333:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9029,19 +9132,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3079, + "id": 1059, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3077, + "id": 1057, "name": "pollNonce", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "9693:9:5", + "referencedDeclaration": 531, + "src": "9345:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9052,14 +9155,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "31", - "id": 3078, + "id": 1058, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9705:1:5", + "src": "9357:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -9067,34 +9170,34 @@ }, "value": "1" }, - "src": "9693:13:5", + "src": "9345:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9681:25:5", + "src": "9333:25:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3081, + "id": 1061, "nodeType": "ExpressionStatement", - "src": "9681:25:5" + "src": "9333:25:4" }, { "assignments": [ - 3083 + 1063 ], "declarations": [ { "constant": false, - "id": 3083, + "id": 1063, "name": "commitEndDate", "nodeType": "VariableDeclaration", - "scope": 3121, - "src": "9717:18:5", + "scope": 1101, + "src": "9365:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9102,10 +9205,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3082, + "id": 1062, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9717:4:5", + "src": "9365:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9115,18 +9218,18 @@ "visibility": "internal" } ], - "id": 3089, + "id": 1069, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3087, + "id": 1067, "name": "_commitDuration", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3069, - "src": "9758:15:5", + "referencedDeclaration": 1049, + "src": "9406:15:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9144,18 +9247,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3084, + "id": 1064, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3882, - "src": "9738:5:5", + "referencedDeclaration": 3692, + "src": "9386:5:4", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 3085, + "id": 1065, "isConstant": false, "isLValue": false, "isPure": false, @@ -9163,27 +9266,27 @@ "memberName": "timestamp", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9738:15:5", + "src": "9386:15:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3086, + "id": 1066, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "9738:19:5", + "referencedDeclaration": 3686, + "src": "9386:19:4", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 3088, + "id": 1068, "isConstant": false, "isLValue": false, "isPure": false, @@ -9191,27 +9294,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9738:36:5", + "src": "9386:36:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9717:57:5" + "src": "9365:57:4" }, { "assignments": [ - 3091 + 1071 ], "declarations": [ { "constant": false, - "id": 3091, + "id": 1071, "name": "revealEndDate", "nodeType": "VariableDeclaration", - "scope": 3121, - "src": "9784:18:5", + "scope": 1101, + "src": "9428:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9219,10 +9322,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3090, + "id": 1070, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9784:4:5", + "src": "9428:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9232,18 +9335,18 @@ "visibility": "internal" } ], - "id": 3096, + "id": 1076, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3094, + "id": 1074, "name": "_revealDuration", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3071, - "src": "9823:15:5", + "referencedDeclaration": 1051, + "src": "9467:15:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9259,32 +9362,32 @@ ], "expression": { "argumentTypes": null, - "id": 3092, + "id": 1072, "name": "commitEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3083, - "src": "9805:13:5", + "referencedDeclaration": 1063, + "src": "9449:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3093, + "id": 1073, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "9805:17:5", + "referencedDeclaration": 3686, + "src": "9449:17:4", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 3095, + "id": 1075, "isConstant": false, "isLValue": false, "isPure": false, @@ -9292,19 +9395,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9805:34:5", + "src": "9449:34:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9784:55:5" + "src": "9428:55:4" }, { "expression": { "argumentTypes": null, - "id": 3107, + "id": 1087, "isConstant": false, "isLValue": false, "isPure": false, @@ -9313,26 +9416,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3097, + "id": 1077, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "9850:7:5", + "referencedDeclaration": 535, + "src": "9490:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3099, + "id": 1079, "indexExpression": { "argumentTypes": null, - "id": 3098, + "id": 1078, "name": "pollNonce", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "9858:9:5", + "referencedDeclaration": 531, + "src": "9498:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9343,9 +9446,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "9850:18:5", + "src": "9490:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, @@ -9356,12 +9459,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3101, + "id": 1081, "name": "_voteQuorum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3067, - "src": "9902:11:5", + "referencedDeclaration": 1047, + "src": "9536:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9369,12 +9472,12 @@ }, { "argumentTypes": null, - "id": 3102, + "id": 1082, "name": "commitEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3083, - "src": "9942:13:5", + "referencedDeclaration": 1063, + "src": "9570:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9382,12 +9485,12 @@ }, { "argumentTypes": null, - "id": 3103, + "id": 1083, "name": "revealEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3091, - "src": "9984:13:5", + "referencedDeclaration": 1071, + "src": "9606:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9396,14 +9499,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 3104, + "id": 1084, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10021:1:5", + "src": "9637:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -9414,14 +9517,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 3105, + "id": 1085, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10050:1:5", + "src": "9660:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -9432,18 +9535,18 @@ ], "expression": { "argumentTypes": null, - "id": 3100, + "id": 1080, "name": "Poll", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2552, - "src": "9871:4:5", + "referencedDeclaration": 526, + "src": "9511:4:4", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Poll_$2552_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Poll_$526_storage_ptr_$", "typeString": "type(struct PLCRVoting.Poll storage pointer)" } }, - "id": 3106, + "id": 1086, "isConstant": false, "isLValue": false, "isPure": false, @@ -9457,34 +9560,34 @@ "votesAgainst" ], "nodeType": "FunctionCall", - "src": "9871:191:5", + "src": "9511:157:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_memory", + "typeIdentifier": "t_struct$_Poll_$526_memory", "typeString": "struct PLCRVoting.Poll memory" } }, - "src": "9850:212:5", + "src": "9490:178:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3108, + "id": 1088, "nodeType": "ExpressionStatement", - "src": "9850:212:5" + "src": "9490:178:4" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3110, + "id": 1090, "name": "_voteQuorum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3067, - "src": "10086:11:5", + "referencedDeclaration": 1047, + "src": "9700:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9492,12 +9595,12 @@ }, { "argumentTypes": null, - "id": 3111, + "id": 1091, "name": "commitEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3083, - "src": "10099:13:5", + "referencedDeclaration": 1063, + "src": "9719:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9505,12 +9608,12 @@ }, { "argumentTypes": null, - "id": 3112, + "id": 1092, "name": "revealEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3091, - "src": "10114:13:5", + "referencedDeclaration": 1071, + "src": "9740:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9518,12 +9621,12 @@ }, { "argumentTypes": null, - "id": 3113, + "id": 1093, "name": "pollNonce", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "10129:9:5", + "referencedDeclaration": 531, + "src": "9761:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9533,18 +9636,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3114, + "id": 1094, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "10140:3:5", + "referencedDeclaration": 3702, + "src": "9778:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3115, + "id": 1095, "isConstant": false, "isLValue": false, "isPure": false, @@ -9552,7 +9655,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10140:10:5", + "src": "9778:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9582,18 +9685,18 @@ "typeString": "address" } ], - "id": 3109, + "id": 1089, "name": "_PollCreated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2506, - "src": "10073:12:5", + "referencedDeclaration": 480, + "src": "9680:12:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,uint256,uint256,uint256,address)" } }, - "id": 3116, + "id": 1096, "isConstant": false, "isLValue": false, "isPure": false, @@ -9601,39 +9704,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10073:78:5", + "src": "9680:114:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3117, - "nodeType": "ExpressionStatement", - "src": "10073:78:5" + "id": 1097, + "nodeType": "EmitStatement", + "src": "9675:119:4" }, { "expression": { "argumentTypes": null, - "id": 3118, + "id": 1098, "name": "pollNonce", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "10168:9:5", + "referencedDeclaration": 531, + "src": "9808:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3075, - "id": 3119, + "functionReturnParameters": 1055, + "id": 1099, "nodeType": "Return", - "src": "10161:16:5" + "src": "9801:16:4" } ] }, "documentation": "@dev Initiates a poll with canonical configured parameters at pollID emitted by PollCreated event\n@param _voteQuorum Type of majority (out of 100) that is necessary for poll to be successful\n@param _commitDuration Length of desired commit period in seconds\n@param _revealDuration Length of desired reveal period in seconds", - "id": 3121, + "id": 1101, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -9641,16 +9744,16 @@ "name": "startPoll", "nodeType": "FunctionDefinition", "parameters": { - "id": 3072, + "id": 1052, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3067, + "id": 1047, "name": "_voteQuorum", "nodeType": "VariableDeclaration", - "scope": 3121, - "src": "9580:16:5", + "scope": 1101, + "src": "9236:16:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9658,10 +9761,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3066, + "id": 1046, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9580:4:5", + "src": "9236:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9672,11 +9775,11 @@ }, { "constant": false, - "id": 3069, + "id": 1049, "name": "_commitDuration", "nodeType": "VariableDeclaration", - "scope": 3121, - "src": "9598:20:5", + "scope": 1101, + "src": "9254:20:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9684,10 +9787,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3068, + "id": 1048, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9598:4:5", + "src": "9254:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9698,11 +9801,11 @@ }, { "constant": false, - "id": 3071, + "id": 1051, "name": "_revealDuration", "nodeType": "VariableDeclaration", - "scope": 3121, - "src": "9620:20:5", + "scope": 1101, + "src": "9276:20:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9710,10 +9813,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3070, + "id": 1050, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9620:4:5", + "src": "9276:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9723,20 +9826,20 @@ "visibility": "internal" } ], - "src": "9579:62:5" + "src": "9235:62:4" }, "payable": false, "returnParameters": { - "id": 3075, + "id": 1055, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3074, + "id": 1054, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 3121, - "src": "9658:11:5", + "scope": 1101, + "src": "9314:11:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9744,10 +9847,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3073, + "id": 1053, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9658:4:5", + "src": "9314:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9757,19 +9860,19 @@ "visibility": "internal" } ], - "src": "9657:13:5" + "src": "9313:13:4" }, - "scope": 3488, - "src": "9561:623:5", + "scope": 1471, + "src": "9217:605:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3157, + "id": 1137, "nodeType": "Block", - "src": "10473:186:5", + "src": "10095:172:4", "statements": [ { "expression": { @@ -9780,12 +9883,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3130, + "id": 1110, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3123, - "src": "10501:7:5", + "referencedDeclaration": 1103, + "src": "10119:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9799,18 +9902,18 @@ "typeString": "uint256" } ], - "id": 3129, + "id": 1109, "name": "pollEnded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3207, - "src": "10491:9:5", + "referencedDeclaration": 1187, + "src": "10109:9:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3131, + "id": 1111, "isConstant": false, "isLValue": false, "isPure": false, @@ -9818,7 +9921,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10491:18:5", + "src": "10109:18:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9832,21 +9935,21 @@ "typeString": "bool" } ], - "id": 3128, + "id": 1108, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "10483:7:5", + "referencedDeclaration": 3705, + "src": "10101:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3132, + "id": 1112, "isConstant": false, "isLValue": false, "isPure": false, @@ -9854,43 +9957,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10483:27:5", + "src": "10101:27:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3133, + "id": 1113, "nodeType": "ExpressionStatement", - "src": "10483:27:5" + "src": "10101:27:4" }, { "assignments": [ - 3135 + 1115 ], "declarations": [ { "constant": false, - "id": 3135, + "id": 1115, "name": "poll", "nodeType": "VariableDeclaration", - "scope": 3158, - "src": "10521:16:5", + "scope": 1138, + "src": "10135:16:4", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_memory_ptr", + "typeIdentifier": "t_struct$_Poll_$526_memory_ptr", "typeString": "struct PLCRVoting.Poll" }, "typeName": { "contractScope": null, - "id": 3134, + "id": 1114, "name": "Poll", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2552, - "src": "10521:4:5", + "referencedDeclaration": 526, + "src": "10135:4:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage_ptr", + "typeIdentifier": "t_struct$_Poll_$526_storage_ptr", "typeString": "struct PLCRVoting.Poll" } }, @@ -9898,31 +10001,31 @@ "visibility": "internal" } ], - "id": 3139, + "id": 1119, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3136, + "id": 1116, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "10540:7:5", + "referencedDeclaration": 535, + "src": "10154:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3138, + "id": 1118, "indexExpression": { "argumentTypes": null, - "id": 3137, + "id": 1117, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3123, - "src": "10548:7:5", + "referencedDeclaration": 1103, + "src": "10162:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9933,14 +10036,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10540:16:5", + "src": "10154:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "10521:35:5" + "src": "10135:35:4" }, { "expression": { @@ -9949,7 +10052,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3155, + "id": 1135, "isConstant": false, "isLValue": false, "isPure": false, @@ -9963,7 +10066,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3143, + "id": 1123, "isConstant": false, "isLValue": false, "isPure": false, @@ -9971,14 +10074,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "313030", - "id": 3140, + "id": 1120, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10574:3:5", + "src": "10184:3:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -9992,46 +10095,46 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3141, + "id": 1121, "name": "poll", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3135, - "src": "10580:4:5", + "referencedDeclaration": 1115, + "src": "10190:4:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_memory_ptr", + "typeIdentifier": "t_struct$_Poll_$526_memory_ptr", "typeString": "struct PLCRVoting.Poll memory" } }, - "id": 3142, + "id": 1122, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "votesFor", "nodeType": "MemberAccess", - "referencedDeclaration": 2541, - "src": "10580:13:5", + "referencedDeclaration": 515, + "src": "10190:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10574:19:5", + "src": "10184:19:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 3144, + "id": 1124, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "10573:21:5", + "src": "10183:21:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10048,7 +10151,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3153, + "id": 1133, "isConstant": false, "isLValue": false, "isPure": false, @@ -10057,26 +10160,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3145, + "id": 1125, "name": "poll", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3135, - "src": "10598:4:5", + "referencedDeclaration": 1115, + "src": "10208:4:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_memory_ptr", + "typeIdentifier": "t_struct$_Poll_$526_memory_ptr", "typeString": "struct PLCRVoting.Poll memory" } }, - "id": 3146, + "id": 1126, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "voteQuorum", "nodeType": "MemberAccess", - "referencedDeclaration": 2539, - "src": "10598:15:5", + "referencedDeclaration": 513, + "src": "10208:15:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10093,7 +10196,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3151, + "id": 1131, "isConstant": false, "isLValue": false, "isPure": false, @@ -10102,26 +10205,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3147, + "id": 1127, "name": "poll", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3135, - "src": "10617:4:5", + "referencedDeclaration": 1115, + "src": "10227:4:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_memory_ptr", + "typeIdentifier": "t_struct$_Poll_$526_memory_ptr", "typeString": "struct PLCRVoting.Poll memory" } }, - "id": 3148, + "id": 1128, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "votesFor", "nodeType": "MemberAccess", - "referencedDeclaration": 2541, - "src": "10617:13:5", + "referencedDeclaration": 515, + "src": "10227:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10133,86 +10236,86 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3149, + "id": 1129, "name": "poll", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3135, - "src": "10633:4:5", + "referencedDeclaration": 1115, + "src": "10243:4:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_memory_ptr", + "typeIdentifier": "t_struct$_Poll_$526_memory_ptr", "typeString": "struct PLCRVoting.Poll memory" } }, - "id": 3150, + "id": 1130, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "votesAgainst", "nodeType": "MemberAccess", - "referencedDeclaration": 2543, - "src": "10633:17:5", + "referencedDeclaration": 517, + "src": "10243:17:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10617:33:5", + "src": "10227:33:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 3152, + "id": 1132, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "10616:35:5", + "src": "10226:35:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10598:53:5", + "src": "10208:53:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 3154, + "id": 1134, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "10597:55:5", + "src": "10207:55:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10573:79:5", + "src": "10183:79:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 3127, - "id": 3156, + "functionReturnParameters": 1107, + "id": 1136, "nodeType": "Return", - "src": "10566:86:5" + "src": "10176:86:4" } ] }, "documentation": "@notice Determines if proposal has passed\n@dev Check if votesFor out of totalVotes exceeds votesQuorum (requires pollEnded)\n@param _pollID Integer identifier associated with target poll", - "id": 3158, + "id": 1138, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -10220,16 +10323,16 @@ "name": "isPassed", "nodeType": "FunctionDefinition", "parameters": { - "id": 3124, + "id": 1104, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3123, + "id": 1103, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3158, - "src": "10421:12:5", + "scope": 1138, + "src": "10047:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10237,10 +10340,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3122, + "id": 1102, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10421:4:5", + "src": "10047:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10250,20 +10353,20 @@ "visibility": "internal" } ], - "src": "10420:14:5" + "src": "10046:14:4" }, "payable": false, "returnParameters": { - "id": 3127, + "id": 1107, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3126, + "id": 1106, "name": "passed", "nodeType": "VariableDeclaration", - "scope": 3158, - "src": "10460:11:5", + "scope": 1138, + "src": "10082:11:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10271,10 +10374,10 @@ "typeString": "bool" }, "typeName": { - "id": 3125, + "id": 1105, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "10460:4:5", + "src": "10082:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -10284,19 +10387,19 @@ "visibility": "internal" } ], - "src": "10459:13:5" + "src": "10081:13:4" }, - "scope": 3488, - "src": "10403:256:5", + "scope": 1471, + "src": "10029:238:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3185, + "id": 1165, "nodeType": "Block", - "src": "11078:185:5", + "src": "10664:159:4", "statements": [ { "expression": { @@ -10307,12 +10410,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3167, + "id": 1147, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3160, - "src": "11106:7:5", + "referencedDeclaration": 1140, + "src": "10688:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10326,18 +10429,18 @@ "typeString": "uint256" } ], - "id": 3166, + "id": 1146, "name": "pollEnded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3207, - "src": "11096:9:5", + "referencedDeclaration": 1187, + "src": "10678:9:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3168, + "id": 1148, "isConstant": false, "isLValue": false, "isPure": false, @@ -10345,7 +10448,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11096:18:5", + "src": "10678:18:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -10359,21 +10462,21 @@ "typeString": "bool" } ], - "id": 3165, + "id": 1145, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "11088:7:5", + "referencedDeclaration": 3705, + "src": "10670:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3169, + "id": 1149, "isConstant": false, "isLValue": false, "isPure": false, @@ -10381,15 +10484,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11088:27:5", + "src": "10670:27:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3170, + "id": 1150, "nodeType": "ExpressionStatement", - "src": "11088:27:5" + "src": "10670:27:4" }, { "condition": { @@ -10397,12 +10500,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3172, + "id": 1152, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3160, - "src": "11139:7:5", + "referencedDeclaration": 1140, + "src": "10717:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10416,18 +10519,18 @@ "typeString": "uint256" } ], - "id": 3171, + "id": 1151, "name": "isPassed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3158, - "src": "11130:8:5", + "referencedDeclaration": 1138, + "src": "10708:8:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3173, + "id": 1153, "isConstant": false, "isLValue": false, "isPure": false, @@ -10435,7 +10538,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11130:17:5", + "src": "10708:17:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -10448,26 +10551,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3179, + "id": 1159, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "11227:7:5", + "referencedDeclaration": 535, + "src": "10789:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3181, + "id": 1161, "indexExpression": { "argumentTypes": null, - "id": 3180, + "id": 1160, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3160, - "src": "11235:7:5", + "referencedDeclaration": 1140, + "src": "10797:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10478,34 +10581,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11227:16:5", + "src": "10789:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3182, + "id": 1162, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "votesAgainst", "nodeType": "MemberAccess", - "referencedDeclaration": 2543, - "src": "11227:29:5", + "referencedDeclaration": 517, + "src": "10789:29:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3164, - "id": 3183, + "functionReturnParameters": 1144, + "id": 1163, "nodeType": "Return", - "src": "11220:36:5" + "src": "10782:36:4" }, - "id": 3184, + "id": 1164, "nodeType": "IfStatement", - "src": "11126:130:5", + "src": "10704:114:4", "trueBody": { "expression": { "argumentTypes": null, @@ -10513,26 +10616,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3174, + "id": 1154, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "11168:7:5", + "referencedDeclaration": 535, + "src": "10740:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3176, + "id": 1156, "indexExpression": { "argumentTypes": null, - "id": 3175, + "id": 1155, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3160, - "src": "11176:7:5", + "referencedDeclaration": 1140, + "src": "10748:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10543,36 +10646,36 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11168:16:5", + "src": "10740:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3177, + "id": 1157, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "votesFor", "nodeType": "MemberAccess", - "referencedDeclaration": 2541, - "src": "11168:25:5", + "referencedDeclaration": 515, + "src": "10740:25:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3164, - "id": 3178, + "functionReturnParameters": 1144, + "id": 1158, "nodeType": "Return", - "src": "11161:32:5" + "src": "10733:32:4" } } ] }, "documentation": "@dev Gets the total winning votes for reward distribution purposes\n@param _pollID Integer identifier associated with target poll\n@return Total number of votes committed to the winning option for specified poll", - "id": 3186, + "id": 1166, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -10580,16 +10683,16 @@ "name": "getTotalNumberOfTokensForWinningOption", "nodeType": "FunctionDefinition", "parameters": { - "id": 3161, + "id": 1141, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3160, + "id": 1140, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3186, - "src": "11023:12:5", + "scope": 1166, + "src": "10613:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10597,10 +10700,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3159, + "id": 1139, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "11023:4:5", + "src": "10613:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10610,20 +10713,20 @@ "visibility": "internal" } ], - "src": "11022:14:5" + "src": "10612:14:4" }, "payable": false, "returnParameters": { - "id": 3164, + "id": 1144, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3163, + "id": 1143, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 3186, - "src": "11062:14:5", + "scope": 1166, + "src": "10648:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10631,10 +10734,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3162, + "id": 1142, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "11062:4:5", + "src": "10648:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10644,19 +10747,19 @@ "visibility": "internal" } ], - "src": "11061:16:5" + "src": "10647:16:4" }, - "scope": 3488, - "src": "10975:288:5", + "scope": 1471, + "src": "10565:258:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3206, + "id": 1186, "nodeType": "Block", - "src": "11519:104:5", + "src": "11063:94:4", "statements": [ { "expression": { @@ -10667,12 +10770,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3195, + "id": 1175, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3188, - "src": "11548:7:5", + "referencedDeclaration": 1168, + "src": "11088:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10686,18 +10789,18 @@ "typeString": "uint256" } ], - "id": 3194, + "id": 1174, "name": "pollExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3319, - "src": "11537:10:5", + "referencedDeclaration": 1299, + "src": "11077:10:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3196, + "id": 1176, "isConstant": false, "isLValue": false, "isPure": false, @@ -10705,7 +10808,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11537:19:5", + "src": "11077:19:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -10719,21 +10822,21 @@ "typeString": "bool" } ], - "id": 3193, + "id": 1173, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "11529:7:5", + "referencedDeclaration": 3705, + "src": "11069:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3197, + "id": 1177, "isConstant": false, "isLValue": false, "isPure": false, @@ -10741,15 +10844,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11529:28:5", + "src": "11069:28:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3198, + "id": 1178, "nodeType": "ExpressionStatement", - "src": "11529:28:5" + "src": "11069:28:4" }, { "expression": { @@ -10761,26 +10864,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3200, + "id": 1180, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "11585:7:5", + "referencedDeclaration": 535, + "src": "11121:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3202, + "id": 1182, "indexExpression": { "argumentTypes": null, - "id": 3201, + "id": 1181, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3188, - "src": "11593:7:5", + "referencedDeclaration": 1168, + "src": "11129:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10791,21 +10894,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11585:16:5", + "src": "11121:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3203, + "id": 1183, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "revealEndDate", "nodeType": "MemberAccess", - "referencedDeclaration": 2537, - "src": "11585:30:5", + "referencedDeclaration": 511, + "src": "11121:30:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10819,18 +10922,18 @@ "typeString": "uint256" } ], - "id": 3199, + "id": 1179, "name": "isExpired", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3472, - "src": "11575:9:5", + "referencedDeclaration": 1452, + "src": "11111:9:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3204, + "id": 1184, "isConstant": false, "isLValue": false, "isPure": false, @@ -10838,21 +10941,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11575:41:5", + "src": "11111:41:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 3192, - "id": 3205, + "functionReturnParameters": 1172, + "id": 1185, "nodeType": "Return", - "src": "11568:48:5" + "src": "11104:48:4" } ] }, "documentation": "@notice Determines if poll is over\n@dev Checks isExpired for specified poll's revealEndDate\n@return Boolean indication of whether polling period is over", - "id": 3207, + "id": 1187, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -10860,16 +10963,16 @@ "name": "pollEnded", "nodeType": "FunctionDefinition", "parameters": { - "id": 3189, + "id": 1169, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3188, + "id": 1168, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3207, - "src": "11468:12:5", + "scope": 1187, + "src": "11016:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10877,10 +10980,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3187, + "id": 1167, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "11468:4:5", + "src": "11016:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10890,20 +10993,20 @@ "visibility": "internal" } ], - "src": "11467:14:5" + "src": "11015:14:4" }, "payable": false, "returnParameters": { - "id": 3192, + "id": 1172, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3191, + "id": 1171, "name": "ended", "nodeType": "VariableDeclaration", - "scope": 3207, - "src": "11507:10:5", + "scope": 1187, + "src": "11051:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10911,10 +11014,10 @@ "typeString": "bool" }, "typeName": { - "id": 3190, + "id": 1170, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "11507:4:5", + "src": "11051:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -10924,19 +11027,19 @@ "visibility": "internal" } ], - "src": "11506:12:5" + "src": "11050:12:4" }, - "scope": 3488, - "src": "11449:174:5", + "scope": 1471, + "src": "10997:160:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3228, + "id": 1208, "nodeType": "Block", - "src": "12005:105:5", + "src": "11521:95:4", "statements": [ { "expression": { @@ -10947,12 +11050,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3216, + "id": 1196, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3209, - "src": "12034:7:5", + "referencedDeclaration": 1189, + "src": "11546:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10966,18 +11069,18 @@ "typeString": "uint256" } ], - "id": 3215, + "id": 1195, "name": "pollExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3319, - "src": "12023:10:5", + "referencedDeclaration": 1299, + "src": "11535:10:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3217, + "id": 1197, "isConstant": false, "isLValue": false, "isPure": false, @@ -10985,7 +11088,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12023:19:5", + "src": "11535:19:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -10999,21 +11102,21 @@ "typeString": "bool" } ], - "id": 3214, + "id": 1194, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "12015:7:5", + "referencedDeclaration": 3705, + "src": "11527:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3218, + "id": 1198, "isConstant": false, "isLValue": false, "isPure": false, @@ -11021,20 +11124,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12015:28:5", + "src": "11527:28:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3219, + "id": 1199, "nodeType": "ExpressionStatement", - "src": "12015:28:5" + "src": "11527:28:4" }, { "expression": { "argumentTypes": null, - "id": 3226, + "id": 1206, "isConstant": false, "isLValue": false, "isPure": false, @@ -11042,7 +11145,7 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "12061:42:5", + "src": "11569:42:4", "subExpression": { "argumentTypes": null, "arguments": [ @@ -11052,26 +11155,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3221, + "id": 1201, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "12072:7:5", + "referencedDeclaration": 535, + "src": "11580:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3223, + "id": 1203, "indexExpression": { "argumentTypes": null, - "id": 3222, + "id": 1202, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3209, - "src": "12080:7:5", + "referencedDeclaration": 1189, + "src": "11588:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11082,21 +11185,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12072:16:5", + "src": "11580:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3224, + "id": 1204, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "commitEndDate", "nodeType": "MemberAccess", - "referencedDeclaration": 2535, - "src": "12072:30:5", + "referencedDeclaration": 509, + "src": "11580:30:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11110,18 +11213,18 @@ "typeString": "uint256" } ], - "id": 3220, + "id": 1200, "name": "isExpired", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3472, - "src": "12062:9:5", + "referencedDeclaration": 1452, + "src": "11570:9:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3225, + "id": 1205, "isConstant": false, "isLValue": false, "isPure": false, @@ -11129,7 +11232,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12062:41:5", + "src": "11570:41:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11140,15 +11243,15 @@ "typeString": "bool" } }, - "functionReturnParameters": 3213, - "id": 3227, + "functionReturnParameters": 1193, + "id": 1207, "nodeType": "Return", - "src": "12054:49:5" + "src": "11562:49:4" } ] }, "documentation": "@notice Checks if the commit period is still active for the specified poll\n@dev Checks isExpired for the specified poll's commitEndDate\n@param _pollID Integer identifier associated with target poll\n@return Boolean indication of isCommitPeriodActive for target poll", - "id": 3229, + "id": 1209, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -11156,16 +11259,16 @@ "name": "commitPeriodActive", "nodeType": "FunctionDefinition", "parameters": { - "id": 3210, + "id": 1190, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3209, + "id": 1189, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3229, - "src": "11953:12:5", + "scope": 1209, + "src": "11473:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11173,10 +11276,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3208, + "id": 1188, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "11953:4:5", + "src": "11473:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11186,20 +11289,20 @@ "visibility": "internal" } ], - "src": "11952:14:5" + "src": "11472:14:4" }, "payable": false, "returnParameters": { - "id": 3213, + "id": 1193, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3212, + "id": 1192, "name": "active", "nodeType": "VariableDeclaration", - "scope": 3229, - "src": "11992:11:5", + "scope": 1209, + "src": "11508:11:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11207,10 +11310,10 @@ "typeString": "bool" }, "typeName": { - "id": 3211, + "id": 1191, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "11992:4:5", + "src": "11508:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11220,19 +11323,19 @@ "visibility": "internal" } ], - "src": "11991:13:5" + "src": "11507:13:4" }, - "scope": 3488, - "src": "11925:185:5", + "scope": 1471, + "src": "11445:171:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3255, + "id": 1235, "nodeType": "Block", - "src": "12421:137:5", + "src": "11911:127:4", "statements": [ { "expression": { @@ -11243,12 +11346,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3238, + "id": 1218, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3231, - "src": "12450:7:5", + "referencedDeclaration": 1211, + "src": "11936:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11262,18 +11365,18 @@ "typeString": "uint256" } ], - "id": 3237, + "id": 1217, "name": "pollExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3319, - "src": "12439:10:5", + "referencedDeclaration": 1299, + "src": "11925:10:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3239, + "id": 1219, "isConstant": false, "isLValue": false, "isPure": false, @@ -11281,7 +11384,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12439:19:5", + "src": "11925:19:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11295,21 +11398,21 @@ "typeString": "bool" } ], - "id": 3236, + "id": 1216, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "12431:7:5", + "referencedDeclaration": 3705, + "src": "11917:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3240, + "id": 1220, "isConstant": false, "isLValue": false, "isPure": false, @@ -11317,15 +11420,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12431:28:5", + "src": "11917:28:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3241, + "id": 1221, "nodeType": "ExpressionStatement", - "src": "12431:28:5" + "src": "11917:28:4" }, { "expression": { @@ -11334,14 +11437,14 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 3253, + "id": 1233, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3248, + "id": 1228, "isConstant": false, "isLValue": false, "isPure": false, @@ -11349,7 +11452,7 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "12477:42:5", + "src": "11959:42:4", "subExpression": { "argumentTypes": null, "arguments": [ @@ -11359,26 +11462,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3243, + "id": 1223, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "12488:7:5", + "referencedDeclaration": 535, + "src": "11970:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3245, + "id": 1225, "indexExpression": { "argumentTypes": null, - "id": 3244, + "id": 1224, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3231, - "src": "12496:7:5", + "referencedDeclaration": 1211, + "src": "11978:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11389,21 +11492,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12488:16:5", + "src": "11970:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3246, + "id": 1226, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "revealEndDate", "nodeType": "MemberAccess", - "referencedDeclaration": 2537, - "src": "12488:30:5", + "referencedDeclaration": 511, + "src": "11970:30:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11417,18 +11520,18 @@ "typeString": "uint256" } ], - "id": 3242, + "id": 1222, "name": "isExpired", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3472, - "src": "12478:9:5", + "referencedDeclaration": 1452, + "src": "11960:9:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3247, + "id": 1227, "isConstant": false, "isLValue": false, "isPure": false, @@ -11436,7 +11539,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12478:41:5", + "src": "11960:41:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11451,7 +11554,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 3252, + "id": 1232, "isConstant": false, "isLValue": false, "isPure": false, @@ -11459,18 +11562,18 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "12523:28:5", + "src": "12005:28:4", "subExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3250, + "id": 1230, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3231, - "src": "12543:7:5", + "referencedDeclaration": 1211, + "src": "12025:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11484,18 +11587,18 @@ "typeString": "uint256" } ], - "id": 3249, + "id": 1229, "name": "commitPeriodActive", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3229, - "src": "12524:18:5", + "referencedDeclaration": 1209, + "src": "12006:18:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3251, + "id": 1231, "isConstant": false, "isLValue": false, "isPure": false, @@ -11503,7 +11606,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12524:27:5", + "src": "12006:27:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11514,21 +11617,21 @@ "typeString": "bool" } }, - "src": "12477:74:5", + "src": "11959:74:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 3235, - "id": 3254, + "functionReturnParameters": 1215, + "id": 1234, "nodeType": "Return", - "src": "12470:81:5" + "src": "11952:81:4" } ] }, "documentation": "@notice Checks if the reveal period is still active for the specified poll\n@dev Checks isExpired for the specified poll's revealEndDate\n@param _pollID Integer identifier associated with target poll", - "id": 3256, + "id": 1236, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -11536,16 +11639,16 @@ "name": "revealPeriodActive", "nodeType": "FunctionDefinition", "parameters": { - "id": 3232, + "id": 1212, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3231, + "id": 1211, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3256, - "src": "12369:12:5", + "scope": 1236, + "src": "11863:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11553,10 +11656,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3230, + "id": 1210, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12369:4:5", + "src": "11863:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11566,20 +11669,20 @@ "visibility": "internal" } ], - "src": "12368:14:5" + "src": "11862:14:4" }, "payable": false, "returnParameters": { - "id": 3235, + "id": 1215, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3234, + "id": 1214, "name": "active", "nodeType": "VariableDeclaration", - "scope": 3256, - "src": "12408:11:5", + "scope": 1236, + "src": "11898:11:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11587,10 +11690,10 @@ "typeString": "bool" }, "typeName": { - "id": 3233, + "id": 1213, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "12408:4:5", + "src": "11898:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11600,19 +11703,19 @@ "visibility": "internal" } ], - "src": "12407:13:5" + "src": "11897:13:4" }, - "scope": 3488, - "src": "12341:217:5", + "scope": 1471, + "src": "11835:203:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3278, + "id": 1258, "nodeType": "Block", - "src": "12904:97:5", + "src": "12366:87:4", "statements": [ { "expression": { @@ -11623,12 +11726,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3267, + "id": 1247, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3260, - "src": "12933:7:5", + "referencedDeclaration": 1240, + "src": "12391:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11642,18 +11745,18 @@ "typeString": "uint256" } ], - "id": 3266, + "id": 1246, "name": "pollExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3319, - "src": "12922:10:5", + "referencedDeclaration": 1299, + "src": "12380:10:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3268, + "id": 1248, "isConstant": false, "isLValue": false, "isPure": false, @@ -11661,7 +11764,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12922:19:5", + "src": "12380:19:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11675,21 +11778,21 @@ "typeString": "bool" } ], - "id": 3265, + "id": 1245, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "12914:7:5", + "referencedDeclaration": 3705, + "src": "12372:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3269, + "id": 1249, "isConstant": false, "isLValue": false, "isPure": false, @@ -11697,15 +11800,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12914:28:5", + "src": "12372:28:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3270, + "id": 1250, "nodeType": "ExpressionStatement", - "src": "12914:28:5" + "src": "12372:28:4" }, { "expression": { @@ -11716,26 +11819,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3271, + "id": 1251, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "12960:7:5", + "referencedDeclaration": 535, + "src": "12414:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3273, + "id": 1253, "indexExpression": { "argumentTypes": null, - "id": 3272, + "id": 1252, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3260, - "src": "12968:7:5", + "referencedDeclaration": 1240, + "src": "12422:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11746,35 +11849,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12960:16:5", + "src": "12414:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3274, + "id": 1254, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "didCommit", "nodeType": "MemberAccess", - "referencedDeclaration": 2547, - "src": "12960:26:5", + "referencedDeclaration": 521, + "src": "12414:26:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 3276, + "id": 1256, "indexExpression": { "argumentTypes": null, - "id": 3275, + "id": 1255, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3258, - "src": "12987:6:5", + "referencedDeclaration": 1238, + "src": "12441:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11785,21 +11888,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12960:34:5", + "src": "12414:34:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 3264, - "id": 3277, + "functionReturnParameters": 1244, + "id": 1257, "nodeType": "Return", - "src": "12953:41:5" + "src": "12407:41:4" } ] }, "documentation": "@dev Checks if user has committed for specified poll\n@param _voter Address of user to check against\n@param _pollID Integer identifier associated with target poll\n@return Boolean indication of whether user has committed", - "id": 3279, + "id": 1259, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -11807,16 +11910,16 @@ "name": "didCommit", "nodeType": "FunctionDefinition", "parameters": { - "id": 3261, + "id": 1241, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3258, + "id": 1238, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3279, - "src": "12833:14:5", + "scope": 1259, + "src": "12299:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11824,10 +11927,10 @@ "typeString": "address" }, "typeName": { - "id": 3257, + "id": 1237, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12833:7:5", + "src": "12299:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11838,11 +11941,11 @@ }, { "constant": false, - "id": 3260, + "id": 1240, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3279, - "src": "12849:12:5", + "scope": 1259, + "src": "12315:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11850,10 +11953,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3259, + "id": 1239, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12849:4:5", + "src": "12315:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11863,20 +11966,20 @@ "visibility": "internal" } ], - "src": "12832:30:5" + "src": "12298:30:4" }, "payable": false, "returnParameters": { - "id": 3264, + "id": 1244, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3263, + "id": 1243, "name": "committed", "nodeType": "VariableDeclaration", - "scope": 3279, - "src": "12888:14:5", + "scope": 1259, + "src": "12350:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11884,10 +11987,10 @@ "typeString": "bool" }, "typeName": { - "id": 3262, + "id": 1242, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "12888:4:5", + "src": "12350:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11897,19 +12000,19 @@ "visibility": "internal" } ], - "src": "12887:16:5" + "src": "12349:16:4" }, - "scope": 3488, - "src": "12814:187:5", + "scope": 1471, + "src": "12280:173:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3301, + "id": 1281, "nodeType": "Block", - "src": "13344:97:5", + "src": "12778:87:4", "statements": [ { "expression": { @@ -11920,12 +12023,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3290, + "id": 1270, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3283, - "src": "13373:7:5", + "referencedDeclaration": 1263, + "src": "12803:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11939,18 +12042,18 @@ "typeString": "uint256" } ], - "id": 3289, + "id": 1269, "name": "pollExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3319, - "src": "13362:10:5", + "referencedDeclaration": 1299, + "src": "12792:10:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3291, + "id": 1271, "isConstant": false, "isLValue": false, "isPure": false, @@ -11958,7 +12061,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13362:19:5", + "src": "12792:19:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11972,21 +12075,21 @@ "typeString": "bool" } ], - "id": 3288, + "id": 1268, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "13354:7:5", + "referencedDeclaration": 3705, + "src": "12784:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3292, + "id": 1272, "isConstant": false, "isLValue": false, "isPure": false, @@ -11994,15 +12097,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13354:28:5", + "src": "12784:28:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3293, + "id": 1273, "nodeType": "ExpressionStatement", - "src": "13354:28:5" + "src": "12784:28:4" }, { "expression": { @@ -12013,26 +12116,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3294, + "id": 1274, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "13400:7:5", + "referencedDeclaration": 535, + "src": "12826:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3296, + "id": 1276, "indexExpression": { "argumentTypes": null, - "id": 3295, + "id": 1275, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3283, - "src": "13408:7:5", + "referencedDeclaration": 1263, + "src": "12834:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12043,35 +12146,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13400:16:5", + "src": "12826:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3297, + "id": 1277, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "didReveal", "nodeType": "MemberAccess", - "referencedDeclaration": 2551, - "src": "13400:26:5", + "referencedDeclaration": 525, + "src": "12826:26:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 3299, + "id": 1279, "indexExpression": { "argumentTypes": null, - "id": 3298, + "id": 1278, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3281, - "src": "13427:6:5", + "referencedDeclaration": 1261, + "src": "12853:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12082,21 +12185,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13400:34:5", + "src": "12826:34:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 3287, - "id": 3300, + "functionReturnParameters": 1267, + "id": 1280, "nodeType": "Return", - "src": "13393:41:5" + "src": "12819:41:4" } ] }, "documentation": "@dev Checks if user has revealed for specified poll\n@param _voter Address of user to check against\n@param _pollID Integer identifier associated with target poll\n@return Boolean indication of whether user has revealed", - "id": 3302, + "id": 1282, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -12104,16 +12207,16 @@ "name": "didReveal", "nodeType": "FunctionDefinition", "parameters": { - "id": 3284, + "id": 1264, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3281, + "id": 1261, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3302, - "src": "13274:14:5", + "scope": 1282, + "src": "12712:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12121,10 +12224,10 @@ "typeString": "address" }, "typeName": { - "id": 3280, + "id": 1260, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13274:7:5", + "src": "12712:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12135,11 +12238,11 @@ }, { "constant": false, - "id": 3283, + "id": 1263, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3302, - "src": "13290:12:5", + "scope": 1282, + "src": "12728:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12147,10 +12250,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3282, + "id": 1262, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "13290:4:5", + "src": "12728:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12160,20 +12263,20 @@ "visibility": "internal" } ], - "src": "13273:30:5" + "src": "12711:30:4" }, "payable": false, "returnParameters": { - "id": 3287, + "id": 1267, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3286, + "id": 1266, "name": "revealed", "nodeType": "VariableDeclaration", - "scope": 3302, - "src": "13329:13:5", + "scope": 1282, + "src": "12763:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12181,10 +12284,10 @@ "typeString": "bool" }, "typeName": { - "id": 3285, + "id": 1265, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13329:4:5", + "src": "12763:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -12194,19 +12297,19 @@ "visibility": "internal" } ], - "src": "13328:15:5" + "src": "12762:15:4" }, - "scope": 3488, - "src": "13255:186:5", + "scope": 1471, + "src": "12693:172:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3318, + "id": 1298, "nodeType": "Block", - "src": "13709:62:5", + "src": "13117:56:4", "statements": [ { "expression": { @@ -12218,7 +12321,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 3315, + "id": 1295, "isConstant": false, "isLValue": false, "isPure": false, @@ -12229,19 +12332,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3311, + "id": 1291, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3309, + "id": 1289, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3304, - "src": "13727:7:5", + "referencedDeclaration": 1284, + "src": "13131:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12252,14 +12355,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 3310, + "id": 1290, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13738:1:5", + "src": "13142:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -12267,7 +12370,7 @@ }, "value": "0" }, - "src": "13727:12:5", + "src": "13131:12:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -12281,19 +12384,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3314, + "id": 1294, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3312, + "id": 1292, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3304, - "src": "13743:7:5", + "referencedDeclaration": 1284, + "src": "13147:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12303,52 +12406,52 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 3313, + "id": 1293, "name": "pollNonce", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "13754:9:5", + "referencedDeclaration": 531, + "src": "13158:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13743:20:5", + "src": "13147:20:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "13727:36:5", + "src": "13131:36:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 3316, + "id": 1296, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "13726:38:5", + "src": "13130:38:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 3308, - "id": 3317, + "functionReturnParameters": 1288, + "id": 1297, "nodeType": "Return", - "src": "13719:45:5" + "src": "13123:45:4" } ] }, "documentation": "@dev Checks if a poll exists\n@param _pollID The pollID whose existance is to be evaluated.\n@return Boolean Indicates whether a poll exists for the provided pollID", - "id": 3319, + "id": 1299, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -12356,16 +12459,16 @@ "name": "pollExists", "nodeType": "FunctionDefinition", "parameters": { - "id": 3305, + "id": 1285, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3304, + "id": 1284, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3319, - "src": "13657:12:5", + "scope": 1299, + "src": "13069:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12373,10 +12476,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3303, + "id": 1283, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "13657:4:5", + "src": "13069:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12386,20 +12489,20 @@ "visibility": "internal" } ], - "src": "13656:14:5" + "src": "13068:14:4" }, "payable": false, "returnParameters": { - "id": 3308, + "id": 1288, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3307, + "id": 1287, "name": "exists", "nodeType": "VariableDeclaration", - "scope": 3319, - "src": "13696:11:5", + "scope": 1299, + "src": "13104:11:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12407,10 +12510,10 @@ "typeString": "bool" }, "typeName": { - "id": 3306, + "id": 1286, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13696:4:5", + "src": "13104:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -12420,19 +12523,19 @@ "visibility": "internal" } ], - "src": "13695:13:5" + "src": "13103:13:4" }, - "scope": 3488, - "src": "13637:134:5", + "scope": 1471, + "src": "13049:124:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3339, + "id": 1319, "nodeType": "Block", - "src": "14232:92:5", + "src": "13610:86:4", "statements": [ { "expression": { @@ -12446,12 +12549,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3332, + "id": 1312, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3321, - "src": "14285:6:5", + "referencedDeclaration": 1301, + "src": "13659:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12459,12 +12562,12 @@ }, { "argumentTypes": null, - "id": 3333, + "id": 1313, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3323, - "src": "14293:7:5", + "referencedDeclaration": 1303, + "src": "13667:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12482,18 +12585,18 @@ "typeString": "uint256" } ], - "id": 3331, + "id": 1311, "name": "attrUUID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3487, - "src": "14276:8:5", + "referencedDeclaration": 1470, + "src": "13650:8:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_address_$_t_uint256_$returns$_t_bytes32_$", "typeString": "function (address,uint256) pure returns (bytes32)" } }, - "id": 3334, + "id": 1314, "isConstant": false, "isLValue": false, "isPure": false, @@ -12501,7 +12604,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14276:25:5", + "src": "13650:25:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12510,14 +12613,14 @@ { "argumentTypes": null, "hexValue": "636f6d6d697448617368", - "id": 3335, + "id": 1315, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "14303:12:5", + "src": "13677:12:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_207714604a0440a484c6569f8718c59de7b49b2f64c69153d0c80360597b39a3", @@ -12539,32 +12642,32 @@ ], "expression": { "argumentTypes": null, - "id": 3329, + "id": 1309, "name": "store", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2571, - "src": "14257:5:5", + "referencedDeclaration": 545, + "src": "13631:5:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage", + "typeIdentifier": "t_struct$_Data_$6_storage", "typeString": "struct AttributeStore.Data storage ref" } }, - "id": 3330, + "id": 1310, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "getAttribute", "nodeType": "MemberAccess", - "referencedDeclaration": 2137, - "src": "14257:18:5", + "referencedDeclaration": 33, + "src": "13631:18:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2113_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_struct$_Data_$2113_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$6_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_struct$_Data_$6_storage_ptr_$", "typeString": "function (struct AttributeStore.Data storage pointer,bytes32,string memory) view returns (uint256)" } }, - "id": 3336, + "id": 1316, "isConstant": false, "isLValue": false, "isPure": false, @@ -12572,7 +12675,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14257:59:5", + "src": "13631:59:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12586,20 +12689,20 @@ "typeString": "uint256" } ], - "id": 3328, + "id": 1308, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14249:7:5", + "src": "13623:7:4", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" }, "typeName": "bytes32" }, - "id": 3337, + "id": 1317, "isConstant": false, "isLValue": false, "isPure": false, @@ -12607,21 +12710,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14249:68:5", + "src": "13623:68:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "functionReturnParameters": 3327, - "id": 3338, + "functionReturnParameters": 1307, + "id": 1318, "nodeType": "Return", - "src": "14242:75:5" + "src": "13616:75:4" } ] }, "documentation": "@dev Gets the bytes32 commitHash property of target poll\n@param _voter Address of user to check against\n@param _pollID Integer identifier associated with target poll\n@return Bytes32 hash property attached to target poll", - "id": 3340, + "id": 1320, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -12629,16 +12732,16 @@ "name": "getCommitHash", "nodeType": "FunctionDefinition", "parameters": { - "id": 3324, + "id": 1304, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3321, + "id": 1301, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3340, - "src": "14157:14:5", + "scope": 1320, + "src": "13539:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12646,10 +12749,10 @@ "typeString": "address" }, "typeName": { - "id": 3320, + "id": 1300, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14157:7:5", + "src": "13539:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12660,11 +12763,11 @@ }, { "constant": false, - "id": 3323, + "id": 1303, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3340, - "src": "14173:12:5", + "scope": 1320, + "src": "13555:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12672,10 +12775,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3322, + "id": 1302, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "14173:4:5", + "src": "13555:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12685,20 +12788,20 @@ "visibility": "internal" } ], - "src": "14156:30:5" + "src": "13538:30:4" }, "payable": false, "returnParameters": { - "id": 3327, + "id": 1307, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3326, + "id": 1306, "name": "commitHash", "nodeType": "VariableDeclaration", - "scope": 3340, - "src": "14212:18:5", + "scope": 1320, + "src": "13590:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12706,10 +12809,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3325, + "id": 1305, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "14212:7:5", + "src": "13590:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12719,19 +12822,19 @@ "visibility": "internal" } ], - "src": "14211:20:5" + "src": "13589:20:4" }, - "scope": 3488, - "src": "14134:190:5", + "scope": 1471, + "src": "13516:180:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3358, + "id": 1338, "nodeType": "Block", - "src": "14689:82:5", + "src": "14043:76:4", "statements": [ { "expression": { @@ -12742,12 +12845,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3352, + "id": 1332, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3342, - "src": "14734:6:5", + "referencedDeclaration": 1322, + "src": "14084:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12755,12 +12858,12 @@ }, { "argumentTypes": null, - "id": 3353, + "id": 1333, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3344, - "src": "14742:7:5", + "referencedDeclaration": 1324, + "src": "14092:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12778,18 +12881,18 @@ "typeString": "uint256" } ], - "id": 3351, + "id": 1331, "name": "attrUUID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3487, - "src": "14725:8:5", + "referencedDeclaration": 1470, + "src": "14075:8:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_address_$_t_uint256_$returns$_t_bytes32_$", "typeString": "function (address,uint256) pure returns (bytes32)" } }, - "id": 3354, + "id": 1334, "isConstant": false, "isLValue": false, "isPure": false, @@ -12797,7 +12900,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14725:25:5", + "src": "14075:25:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12806,14 +12909,14 @@ { "argumentTypes": null, "hexValue": "6e756d546f6b656e73", - "id": 3355, + "id": 1335, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "14752:11:5", + "src": "14102:11:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_aaabf4403cd242796b0e69a57762477ad48e1fa250247ff93eeada3e5b75581a", @@ -12835,32 +12938,32 @@ ], "expression": { "argumentTypes": null, - "id": 3349, + "id": 1329, "name": "store", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2571, - "src": "14706:5:5", + "referencedDeclaration": 545, + "src": "14056:5:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage", + "typeIdentifier": "t_struct$_Data_$6_storage", "typeString": "struct AttributeStore.Data storage ref" } }, - "id": 3350, + "id": 1330, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "getAttribute", "nodeType": "MemberAccess", - "referencedDeclaration": 2137, - "src": "14706:18:5", + "referencedDeclaration": 33, + "src": "14056:18:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2113_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_struct$_Data_$2113_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$6_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_struct$_Data_$6_storage_ptr_$", "typeString": "function (struct AttributeStore.Data storage pointer,bytes32,string memory) view returns (uint256)" } }, - "id": 3356, + "id": 1336, "isConstant": false, "isLValue": false, "isPure": false, @@ -12868,21 +12971,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14706:58:5", + "src": "14056:58:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3348, - "id": 3357, + "functionReturnParameters": 1328, + "id": 1337, "nodeType": "Return", - "src": "14699:65:5" + "src": "14049:65:4" } ] }, "documentation": "@dev Wrapper for getAttribute with attrName=\"numTokens\"\n@param _voter Address of user to check against\n@param _pollID Integer identifier associated with target poll\n@return Number of tokens committed to poll in sorted poll-linked-list", - "id": 3359, + "id": 1339, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -12890,16 +12993,16 @@ "name": "getNumTokens", "nodeType": "FunctionDefinition", "parameters": { - "id": 3345, + "id": 1325, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3342, + "id": 1322, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3359, - "src": "14618:14:5", + "scope": 1339, + "src": "13976:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12907,10 +13010,10 @@ "typeString": "address" }, "typeName": { - "id": 3341, + "id": 1321, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14618:7:5", + "src": "13976:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12921,11 +13024,11 @@ }, { "constant": false, - "id": 3344, + "id": 1324, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3359, - "src": "14634:12:5", + "scope": 1339, + "src": "13992:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12933,10 +13036,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3343, + "id": 1323, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "14634:4:5", + "src": "13992:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12946,20 +13049,20 @@ "visibility": "internal" } ], - "src": "14617:30:5" + "src": "13975:30:4" }, "payable": false, "returnParameters": { - "id": 3348, + "id": 1328, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3347, + "id": 1327, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 3359, - "src": "14673:14:5", + "scope": 1339, + "src": "14027:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12967,10 +13070,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3346, + "id": 1326, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "14673:4:5", + "src": "14027:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12980,19 +13083,19 @@ "visibility": "internal" } ], - "src": "14672:16:5" + "src": "14026:16:4" }, - "scope": 3488, - "src": "14596:175:5", + "scope": 1471, + "src": "13954:165:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3373, + "id": 1353, "nodeType": "Block", - "src": "15056:49:5", + "src": "14388:43:4", "statements": [ { "expression": { @@ -13001,14 +13104,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 3370, + "id": 1350, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "15096:1:5", + "src": "14424:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -13028,26 +13131,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3366, + "id": 1346, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "15073:6:5", + "referencedDeclaration": 543, + "src": "14401:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 3368, + "id": 1348, "indexExpression": { "argumentTypes": null, - "id": 3367, + "id": 1347, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3361, - "src": "15080:6:5", + "referencedDeclaration": 1341, + "src": "14408:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13058,27 +13161,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15073:14:5", + "src": "14401:14:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 3369, + "id": 1349, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "getPrev", "nodeType": "MemberAccess", - "referencedDeclaration": 2286, - "src": "15073:22:5", + "referencedDeclaration": 185, + "src": "14401:22:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 3371, + "id": 1351, "isConstant": false, "isLValue": false, "isPure": false, @@ -13086,21 +13189,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15073:25:5", + "src": "14401:25:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3365, - "id": 3372, + "functionReturnParameters": 1345, + "id": 1352, "nodeType": "Return", - "src": "15066:32:5" + "src": "14394:32:4" } ] }, "documentation": "@dev Gets top element of sorted poll-linked-list\n@param _voter Address of user to check against\n@return Integer identifier to poll with maximum number of tokens committed to it", - "id": 3374, + "id": 1354, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -13108,16 +13211,16 @@ "name": "getLastNode", "nodeType": "FunctionDefinition", "parameters": { - "id": 3362, + "id": 1342, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3361, + "id": 1341, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3374, - "src": "15002:14:5", + "scope": 1354, + "src": "14338:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13125,10 +13228,10 @@ "typeString": "address" }, "typeName": { - "id": 3360, + "id": 1340, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15002:7:5", + "src": "14338:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13138,20 +13241,20 @@ "visibility": "internal" } ], - "src": "15001:16:5" + "src": "14337:16:4" }, "payable": false, "returnParameters": { - "id": 3365, + "id": 1345, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3364, + "id": 1344, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 3374, - "src": "15043:11:5", + "scope": 1354, + "src": "14375:11:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13159,10 +13262,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3363, + "id": 1343, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "15043:4:5", + "src": "14375:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13172,19 +13275,19 @@ "visibility": "internal" } ], - "src": "15042:13:5" + "src": "14374:13:4" }, - "scope": 3488, - "src": "14981:124:5", + "scope": 1471, + "src": "14317:114:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3388, + "id": 1368, "nodeType": "Block", - "src": "15376:65:5", + "src": "14686:59:4", "statements": [ { "expression": { @@ -13192,12 +13295,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3382, + "id": 1362, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3376, - "src": "15406:6:5", + "referencedDeclaration": 1356, + "src": "14712:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13208,12 +13311,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3384, + "id": 1364, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3376, - "src": "15426:6:5", + "referencedDeclaration": 1356, + "src": "14732:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13227,18 +13330,18 @@ "typeString": "address" } ], - "id": 3383, + "id": 1363, "name": "getLastNode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3374, - "src": "15414:11:5", + "referencedDeclaration": 1354, + "src": "14720:11:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 3385, + "id": 1365, "isConstant": false, "isLValue": false, "isPure": false, @@ -13246,7 +13349,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15414:19:5", + "src": "14720:19:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13264,18 +13367,18 @@ "typeString": "uint256" } ], - "id": 3381, + "id": 1361, "name": "getNumTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3359, - "src": "15393:12:5", + "referencedDeclaration": 1339, + "src": "14699:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, - "id": 3386, + "id": 1366, "isConstant": false, "isLValue": false, "isPure": false, @@ -13283,21 +13386,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15393:41:5", + "src": "14699:41:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3380, - "id": 3387, + "functionReturnParameters": 1360, + "id": 1367, "nodeType": "Return", - "src": "15386:48:5" + "src": "14692:48:4" } ] }, "documentation": "@dev Gets the numTokens property of getLastNode\n@param _voter Address of user to check against\n@return Maximum number of tokens committed in poll specified", - "id": 3389, + "id": 1369, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -13305,16 +13408,16 @@ "name": "getLockedTokens", "nodeType": "FunctionDefinition", "parameters": { - "id": 3377, + "id": 1357, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3376, + "id": 1356, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3389, - "src": "15319:14:5", + "scope": 1369, + "src": "14633:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13322,10 +13425,10 @@ "typeString": "address" }, "typeName": { - "id": 3375, + "id": 1355, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15319:7:5", + "src": "14633:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13335,20 +13438,20 @@ "visibility": "internal" } ], - "src": "15318:16:5" + "src": "14632:16:4" }, "payable": false, "returnParameters": { - "id": 3380, + "id": 1360, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3379, + "id": 1359, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 3389, - "src": "15360:14:5", + "scope": 1369, + "src": "14670:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13356,10 +13459,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3378, + "id": 1358, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "15360:4:5", + "src": "14670:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13369,32 +13472,32 @@ "visibility": "internal" } ], - "src": "15359:16:5" + "src": "14669:16:4" }, - "scope": 3488, - "src": "15294:147:5", + "scope": 1471, + "src": "14608:137:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3457, + "id": 1437, "nodeType": "Block", - "src": "16278:990:5", + "src": "15556:951:4", "statements": [ { "assignments": [ - 3401 + 1381 ], "declarations": [ { "constant": false, - "id": 3401, + "id": 1381, "name": "nodeID", "nodeType": "VariableDeclaration", - "scope": 3458, - "src": "16363:11:5", + "scope": 1438, + "src": "15637:11:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13402,10 +13505,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3400, + "id": 1380, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "16363:4:5", + "src": "15637:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13415,18 +13518,18 @@ "visibility": "internal" } ], - "id": 3405, + "id": 1385, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3403, + "id": 1383, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3391, - "src": "16389:6:5", + "referencedDeclaration": 1371, + "src": "15663:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13440,18 +13543,18 @@ "typeString": "address" } ], - "id": 3402, + "id": 1382, "name": "getLastNode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3374, - "src": "16377:11:5", + "referencedDeclaration": 1354, + "src": "15651:11:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 3404, + "id": 1384, "isConstant": false, "isLValue": false, "isPure": false, @@ -13459,27 +13562,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16377:19:5", + "src": "15651:19:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "16363:33:5" + "src": "15637:33:4" }, { "assignments": [ - 3407 + 1387 ], "declarations": [ { "constant": false, - "id": 3407, + "id": 1387, "name": "tokensInNode", "nodeType": "VariableDeclaration", - "scope": 3458, - "src": "16404:17:5", + "scope": 1438, + "src": "15676:17:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13487,10 +13590,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3406, + "id": 1386, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "16404:4:5", + "src": "15676:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13500,18 +13603,18 @@ "visibility": "internal" } ], - "id": 3412, + "id": 1392, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3409, + "id": 1389, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3391, - "src": "16437:6:5", + "referencedDeclaration": 1371, + "src": "15709:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13519,12 +13622,12 @@ }, { "argumentTypes": null, - "id": 3410, + "id": 1390, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "16445:6:5", + "referencedDeclaration": 1381, + "src": "15717:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13542,18 +13645,18 @@ "typeString": "uint256" } ], - "id": 3408, + "id": 1388, "name": "getNumTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3359, - "src": "16424:12:5", + "referencedDeclaration": 1339, + "src": "15696:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, - "id": 3411, + "id": 1391, "isConstant": false, "isLValue": false, "isPure": false, @@ -13561,37 +13664,37 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16424:28:5", + "src": "15696:28:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "16404:48:5" + "src": "15676:48:4" }, { "body": { - "id": 3453, + "id": 1433, "nodeType": "Block", - "src": "16553:591:5", + "src": "15822:567:4", "statements": [ { "expression": { "argumentTypes": null, - "id": 3421, + "id": 1401, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 3416, + "id": 1396, "name": "tokensInNode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3407, - "src": "16619:12:5", + "referencedDeclaration": 1387, + "src": "15884:12:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13604,12 +13707,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3418, + "id": 1398, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3391, - "src": "16647:6:5", + "referencedDeclaration": 1371, + "src": "15912:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13617,12 +13720,12 @@ }, { "argumentTypes": null, - "id": 3419, + "id": 1399, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "16655:6:5", + "referencedDeclaration": 1381, + "src": "15920:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13640,18 +13743,18 @@ "typeString": "uint256" } ], - "id": 3417, + "id": 1397, "name": "getNumTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3359, - "src": "16634:12:5", + "referencedDeclaration": 1339, + "src": "15899:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, - "id": 3420, + "id": 1400, "isConstant": false, "isLValue": false, "isPure": false, @@ -13659,21 +13762,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16634:28:5", + "src": "15899:28:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "16619:43:5", + "src": "15884:43:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3422, + "id": 1402, "nodeType": "ExpressionStatement", - "src": "16619:43:5" + "src": "15884:43:4" }, { "condition": { @@ -13682,19 +13785,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3425, + "id": 1405, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3423, + "id": 1403, "name": "tokensInNode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3407, - "src": "16675:12:5", + "referencedDeclaration": 1387, + "src": "15939:12:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13704,31 +13807,31 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 3424, + "id": 1404, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3393, - "src": "16691:10:5", + "referencedDeclaration": 1373, + "src": "15955:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "16675:26:5", + "src": "15939:26:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 3443, + "id": 1423, "nodeType": "IfStatement", - "src": "16672:324:5", + "src": "15935:312:4", "trueBody": { - "id": 3442, + "id": 1422, "nodeType": "Block", - "src": "16703:293:5", + "src": "15967:280:4", "statements": [ { "condition": { @@ -13737,19 +13840,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3428, + "id": 1408, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3426, + "id": 1406, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "16748:6:5", + "referencedDeclaration": 1381, + "src": "16011:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13759,48 +13862,48 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 3427, + "id": 1407, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3395, - "src": "16758:7:5", + "referencedDeclaration": 1375, + "src": "16021:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "16748:17:5", + "src": "16011:17:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 3439, + "id": 1419, "nodeType": "IfStatement", - "src": "16745:178:5", + "src": "16007:173:4", "trueBody": { - "id": 3438, + "id": 1418, "nodeType": "Block", - "src": "16767:156:5", + "src": "16030:150:4", "statements": [ { "expression": { "argumentTypes": null, - "id": 3436, + "id": 1416, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 3429, + "id": 1409, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "16871:6:5", + "referencedDeclaration": 1381, + "src": "16130:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13813,12 +13916,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3434, + "id": 1414, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "16903:6:5", + "referencedDeclaration": 1381, + "src": "16162:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13836,26 +13939,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3430, + "id": 1410, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "16880:6:5", + "referencedDeclaration": 543, + "src": "16139:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 3432, + "id": 1412, "indexExpression": { "argumentTypes": null, - "id": 3431, + "id": 1411, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3391, - "src": "16887:6:5", + "referencedDeclaration": 1371, + "src": "16146:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13866,27 +13969,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "16880:14:5", + "src": "16139:14:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 3433, + "id": 1413, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "getPrev", "nodeType": "MemberAccess", - "referencedDeclaration": 2286, - "src": "16880:22:5", + "referencedDeclaration": 185, + "src": "16139:22:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 3435, + "id": 1415, "isConstant": false, "isLValue": false, "isPure": false, @@ -13894,21 +13997,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16880:30:5", + "src": "16139:30:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "16871:39:5", + "src": "16130:39:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3437, + "id": 1417, "nodeType": "ExpressionStatement", - "src": "16871:39:5" + "src": "16130:39:4" } ] } @@ -13916,21 +14019,21 @@ { "expression": { "argumentTypes": null, - "id": 3440, + "id": 1420, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "16978:6:5", + "referencedDeclaration": 1381, + "src": "16231:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3399, - "id": 3441, + "functionReturnParameters": 1379, + "id": 1421, "nodeType": "Return", - "src": "16971:13:5" + "src": "16224:13:4" } ] } @@ -13938,19 +14041,19 @@ { "expression": { "argumentTypes": null, - "id": 3451, + "id": 1431, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 3444, + "id": 1424, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "17096:6:5", + "referencedDeclaration": 1381, + "src": "16343:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13963,12 +14066,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3449, + "id": 1429, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "17128:6:5", + "referencedDeclaration": 1381, + "src": "16375:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13986,26 +14089,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3445, + "id": 1425, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "17105:6:5", + "referencedDeclaration": 543, + "src": "16352:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 3447, + "id": 1427, "indexExpression": { "argumentTypes": null, - "id": 3446, + "id": 1426, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3391, - "src": "17112:6:5", + "referencedDeclaration": 1371, + "src": "16359:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14016,27 +14119,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "17105:14:5", + "src": "16352:14:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 3448, + "id": 1428, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "getPrev", "nodeType": "MemberAccess", - "referencedDeclaration": 2286, - "src": "17105:22:5", + "referencedDeclaration": 185, + "src": "16352:22:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 3450, + "id": 1430, "isConstant": false, "isLValue": false, "isPure": false, @@ -14044,21 +14147,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "17105:30:5", + "src": "16352:30:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "17096:39:5", + "src": "16343:39:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3452, + "id": 1432, "nodeType": "ExpressionStatement", - "src": "17096:39:5" + "src": "16343:39:4" } ] }, @@ -14068,19 +14171,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3415, + "id": 1395, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3413, + "id": 1393, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "16540:6:5", + "referencedDeclaration": 1381, + "src": "15809:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14091,14 +14194,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 3414, + "id": 1394, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16550:1:5", + "src": "15819:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -14106,39 +14209,39 @@ }, "value": "0" }, - "src": "16540:11:5", + "src": "15809:11:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 3454, + "id": 1434, "nodeType": "WhileStatement", - "src": "16534:610:5" + "src": "15802:587:4" }, { "expression": { "argumentTypes": null, - "id": 3455, + "id": 1435, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "17255:6:5", + "referencedDeclaration": 1381, + "src": "16496:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3399, - "id": 3456, + "functionReturnParameters": 1379, + "id": 1436, "nodeType": "Return", - "src": "17248:13:5" + "src": "16489:13:4" } ] }, "documentation": null, - "id": 3458, + "id": 1438, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -14146,16 +14249,16 @@ "name": "getInsertPointForNumTokens", "nodeType": "FunctionDefinition", "parameters": { - "id": 3396, + "id": 1376, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3391, + "id": 1371, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3458, - "src": "16187:14:5", + "scope": 1438, + "src": "15469:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14163,10 +14266,10 @@ "typeString": "address" }, "typeName": { - "id": 3390, + "id": 1370, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16187:7:5", + "src": "15469:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14177,11 +14280,11 @@ }, { "constant": false, - "id": 3393, + "id": 1373, "name": "_numTokens", "nodeType": "VariableDeclaration", - "scope": 3458, - "src": "16203:15:5", + "scope": 1438, + "src": "15485:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14189,10 +14292,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3392, + "id": 1372, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "16203:4:5", + "src": "15485:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14203,11 +14306,11 @@ }, { "constant": false, - "id": 3395, + "id": 1375, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3458, - "src": "16220:12:5", + "scope": 1438, + "src": "15502:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14215,10 +14318,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3394, + "id": 1374, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "16220:4:5", + "src": "15502:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14228,20 +14331,20 @@ "visibility": "internal" } ], - "src": "16186:47:5" + "src": "15468:47:4" }, "payable": false, "returnParameters": { - "id": 3399, + "id": 1379, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3398, + "id": 1378, "name": "prevNode", "nodeType": "VariableDeclaration", - "scope": 3458, - "src": "16263:13:5", + "scope": 1438, + "src": "15539:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14249,10 +14352,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3397, + "id": 1377, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "16263:4:5", + "src": "15539:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14262,19 +14365,19 @@ "visibility": "internal" } ], - "src": "16262:15:5" + "src": "15538:15:4" }, - "scope": 3488, - "src": "16151:1117:5", + "scope": 1471, + "src": "15433:1074:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3471, + "id": 1451, "nodeType": "Block", - "src": "17667:60:5", + "src": "16884:54:4", "statements": [ { "expression": { @@ -14286,7 +14389,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3468, + "id": 1448, "isConstant": false, "isLValue": false, "isPure": false, @@ -14295,18 +14398,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3465, + "id": 1445, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3882, - "src": "17685:5:5", + "referencedDeclaration": 3692, + "src": "16898:5:4", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 3466, + "id": 1446, "isConstant": false, "isLValue": false, "isPure": false, @@ -14314,7 +14417,7 @@ "memberName": "timestamp", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "17685:15:5", + "src": "16898:15:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14324,46 +14427,46 @@ "operator": ">", "rightExpression": { "argumentTypes": null, - "id": 3467, + "id": 1447, "name": "_terminationDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3460, - "src": "17703:16:5", + "referencedDeclaration": 1440, + "src": "16916:16:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "17685:34:5", + "src": "16898:34:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 3469, + "id": 1449, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "17684:36:5", + "src": "16897:36:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 3464, - "id": 3470, + "functionReturnParameters": 1444, + "id": 1450, "nodeType": "Return", - "src": "17677:43:5" + "src": "16890:43:4" } ] }, "documentation": "@dev Checks if an expiration date has been reached\n@param _terminationDate Integer timestamp of date to compare current timestamp with\n@return expired Boolean indication of whether the terminationDate has passed", - "id": 3472, + "id": 1452, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -14371,16 +14474,16 @@ "name": "isExpired", "nodeType": "FunctionDefinition", "parameters": { - "id": 3461, + "id": 1441, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3460, + "id": 1440, "name": "_terminationDate", "nodeType": "VariableDeclaration", - "scope": 3472, - "src": "17605:21:5", + "scope": 1452, + "src": "16826:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14388,10 +14491,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3459, + "id": 1439, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "17605:4:5", + "src": "16826:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14401,20 +14504,20 @@ "visibility": "internal" } ], - "src": "17604:23:5" + "src": "16825:23:4" }, "payable": false, "returnParameters": { - "id": 3464, + "id": 1444, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3463, + "id": 1443, "name": "expired", "nodeType": "VariableDeclaration", - "scope": 3472, - "src": "17653:12:5", + "scope": 1452, + "src": "16870:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14422,10 +14525,10 @@ "typeString": "bool" }, "typeName": { - "id": 3462, + "id": 1442, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "17653:4:5", + "src": "16870:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -14435,19 +14538,19 @@ "visibility": "internal" } ], - "src": "17652:14:5" + "src": "16869:14:4" }, - "scope": 3488, - "src": "17586:141:5", + "scope": 1471, + "src": "16807:131:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3486, + "id": 1469, "nodeType": "Block", - "src": "18041:49:5", + "src": "17240:61:4", "statements": [ { "expression": { @@ -14455,54 +14558,106 @@ "arguments": [ { "argumentTypes": null, - "id": 3482, - "name": "_user", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3474, - "src": "18068:5:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3483, - "name": "_pollID", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3476, - "src": "18075:7:5", + "arguments": [ + { + "argumentTypes": null, + "id": 1464, + "name": "_user", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1454, + "src": "17280:5:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1465, + "name": "_pollID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1456, + "src": "17287:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1462, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "17263:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1463, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "17263:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17263:32:4", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 3481, + "id": 1461, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "18058:9:5", + "referencedDeclaration": 3696, + "src": "17253:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 3484, + "id": 1467, "isConstant": false, "isLValue": false, "isPure": false, @@ -14510,21 +14665,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "18058:25:5", + "src": "17253:43:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "functionReturnParameters": 3480, - "id": 3485, + "functionReturnParameters": 1460, + "id": 1468, "nodeType": "Return", - "src": "18051:32:5" + "src": "17246:50:4" } ] }, "documentation": "@dev Generates an identifier which associates a user and a poll together\n@param _pollID Integer identifier associated with target poll\n@return UUID Hash which is deterministic from _user and _pollID", - "id": 3487, + "id": 1470, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -14532,16 +14687,16 @@ "name": "attrUUID", "nodeType": "FunctionDefinition", "parameters": { - "id": 3477, + "id": 1457, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3474, + "id": 1454, "name": "_user", "nodeType": "VariableDeclaration", - "scope": 3487, - "src": "17977:13:5", + "scope": 1470, + "src": "17176:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14549,10 +14704,10 @@ "typeString": "address" }, "typeName": { - "id": 3473, + "id": 1453, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17977:7:5", + "src": "17176:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14563,11 +14718,11 @@ }, { "constant": false, - "id": 3476, + "id": 1456, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3487, - "src": "17992:12:5", + "scope": 1470, + "src": "17191:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14575,10 +14730,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3475, + "id": 1455, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "17992:4:5", + "src": "17191:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14588,20 +14743,20 @@ "visibility": "internal" } ], - "src": "17976:29:5" + "src": "17175:29:4" }, "payable": false, "returnParameters": { - "id": 3480, + "id": 1460, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3479, + "id": 1459, "name": "UUID", "nodeType": "VariableDeclaration", - "scope": 3487, - "src": "18027:12:5", + "scope": 1470, + "src": "17226:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14609,10 +14764,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3478, + "id": 1458, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "18027:7:5", + "src": "17226:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14622,83 +14777,82 @@ "visibility": "internal" } ], - "src": "18026:14:5" + "src": "17225:14:4" }, - "scope": 3488, - "src": "17959:131:5", + "scope": 1471, + "src": "17158:143:4", "stateMutability": "pure", "superFunction": null, "visibility": "public" } ], - "scope": 3489, - "src": "292:17800:5" + "scope": 1472, + "src": "252:17051:4" } ], - "src": "0:18093:5" + "src": "0:17304:4" }, "legacyAST": { - "absolutePath": "plcrvoting/PLCRVoting.sol", + "absolutePath": "/home/rob/Github/computable/contracts/PLCRVoting.sol", "exportedSymbols": { "PLCRVoting": [ - 3488 + 1471 ] }, - "id": 3489, + "id": 1472, "nodeType": "SourceUnit", "nodes": [ { - "id": 2468, + "id": 442, "literals": [ "solidity", - "^", "0.4", - ".8" + ".24" ], "nodeType": "PragmaDirective", - "src": "0:23:5" + "src": "0:23:4" }, { - "absolutePath": "tokens/eip20/EIP20Interface.sol", - "file": "tokens/eip20/EIP20Interface.sol", - "id": 2469, + "absolutePath": "/home/rob/Github/computable/contracts/ERC20.sol", + "file": "./ERC20.sol", + "id": 443, "nodeType": "ImportDirective", - "scope": 3489, - "sourceUnit": 3783, - "src": "24:41:5", + "scope": 1472, + "sourceUnit": 409, + "src": "25:21:4", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "dll/DLL.sol", - "file": "dll/DLL.sol", - "id": 2470, + "absolutePath": "/home/rob/Github/computable/contracts/DLL.sol", + "file": "./DLL.sol", + "id": 444, "nodeType": "ImportDirective", - "scope": 3489, - "sourceUnit": 2467, - "src": "66:21:5", + "scope": 1472, + "sourceUnit": 366, + "src": "47:19:4", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "attrstore/AttributeStore.sol", - "file": "attrstore/AttributeStore.sol", - "id": 2471, + "absolutePath": "/home/rob/Github/computable/contracts/AttributeStore.sol", + "file": "./AttributeStore.sol", + "id": 445, "nodeType": "ImportDirective", - "scope": 3489, - "sourceUnit": 2166, - "src": "88:38:5", + "scope": 1472, + "sourceUnit": 65, + "src": "67:30:4", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "zeppelin/math/SafeMath.sol", - "file": "zeppelin/math/SafeMath.sol", - "id": 2472, + "absolutePath": "/home/rob/Github/computable/contracts/SafeMath.sol", + "file": "./SafeMath.sol", + "id": 446, "nodeType": "ImportDirective", - "scope": 3489, - "sourceUnit": 3878, - "src": "127:36:5", + "scope": 1472, + "sourceUnit": 3688, + "src": "98:24:4", "symbolAliases": [], "unitAlias": "" }, @@ -14708,9 +14862,9 @@ "contractKind": "contract", "documentation": "@title Partial-Lock-Commit-Reveal Voting scheme with ERC20 tokens\n@author Team: Aspyn Palatnick, Cem Ozer, Yorke Rhodes", "fullyImplemented": true, - "id": 3488, + "id": 1471, "linearizedBaseContracts": [ - 3488 + 1471 ], "name": "PLCRVoting", "nodeType": "ContractDefinition", @@ -14718,21 +14872,21 @@ { "anonymous": false, "documentation": null, - "id": 2480, + "id": 454, "name": "_VoteCommitted", "nodeType": "EventDefinition", "parameters": { - "id": 2479, + "id": 453, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2474, + "id": 448, "indexed": true, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 2480, - "src": "396:19:5", + "scope": 454, + "src": "348:19:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14740,10 +14894,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2473, + "id": 447, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "396:4:5", + "src": "348:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14754,12 +14908,12 @@ }, { "constant": false, - "id": 2476, + "id": 450, "indexed": false, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 2480, - "src": "417:14:5", + "scope": 454, + "src": "369:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14767,10 +14921,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2475, + "id": 449, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "417:4:5", + "src": "369:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14781,12 +14935,12 @@ }, { "constant": false, - "id": 2478, + "id": 452, "indexed": true, "name": "voter", "nodeType": "VariableDeclaration", - "scope": 2480, - "src": "433:21:5", + "scope": 454, + "src": "385:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14794,10 +14948,10 @@ "typeString": "address" }, "typeName": { - "id": 2477, + "id": 451, "name": "address", "nodeType": "ElementaryTypeName", - "src": "433:7:5", + "src": "385:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14807,28 +14961,28 @@ "visibility": "internal" } ], - "src": "395:60:5" + "src": "347:60:4" }, - "src": "375:81:5" + "src": "327:81:4" }, { "anonymous": false, "documentation": null, - "id": 2494, + "id": 468, "name": "_VoteRevealed", "nodeType": "EventDefinition", "parameters": { - "id": 2493, + "id": 467, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2482, + "id": 456, "indexed": true, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 2494, - "src": "481:19:5", + "scope": 468, + "src": "431:19:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14836,10 +14990,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2481, + "id": 455, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "481:4:5", + "src": "431:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14850,12 +15004,12 @@ }, { "constant": false, - "id": 2484, + "id": 458, "indexed": false, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 2494, - "src": "502:14:5", + "scope": 468, + "src": "452:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14863,10 +15017,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2483, + "id": 457, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "502:4:5", + "src": "452:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14877,12 +15031,12 @@ }, { "constant": false, - "id": 2486, + "id": 460, "indexed": false, "name": "votesFor", "nodeType": "VariableDeclaration", - "scope": 2494, - "src": "518:13:5", + "scope": 468, + "src": "468:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14890,10 +15044,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2485, + "id": 459, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "518:4:5", + "src": "468:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14904,12 +15058,12 @@ }, { "constant": false, - "id": 2488, + "id": 462, "indexed": false, "name": "votesAgainst", "nodeType": "VariableDeclaration", - "scope": 2494, - "src": "533:17:5", + "scope": 468, + "src": "483:17:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14917,10 +15071,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2487, + "id": 461, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "533:4:5", + "src": "483:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14931,12 +15085,12 @@ }, { "constant": false, - "id": 2490, + "id": 464, "indexed": true, "name": "choice", "nodeType": "VariableDeclaration", - "scope": 2494, - "src": "552:19:5", + "scope": 468, + "src": "502:19:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14944,10 +15098,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2489, + "id": 463, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "552:4:5", + "src": "502:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14958,12 +15112,12 @@ }, { "constant": false, - "id": 2492, + "id": 466, "indexed": true, "name": "voter", "nodeType": "VariableDeclaration", - "scope": 2494, - "src": "573:21:5", + "scope": 468, + "src": "523:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14971,10 +15125,10 @@ "typeString": "address" }, "typeName": { - "id": 2491, + "id": 465, "name": "address", "nodeType": "ElementaryTypeName", - "src": "573:7:5", + "src": "523:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14984,28 +15138,28 @@ "visibility": "internal" } ], - "src": "480:115:5" + "src": "430:115:4" }, - "src": "461:135:5" + "src": "411:135:4" }, { "anonymous": false, "documentation": null, - "id": 2506, + "id": 480, "name": "_PollCreated", "nodeType": "EventDefinition", "parameters": { - "id": 2505, + "id": 479, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2496, + "id": 470, "indexed": false, "name": "voteQuorum", "nodeType": "VariableDeclaration", - "scope": 2506, - "src": "620:15:5", + "scope": 480, + "src": "568:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15013,10 +15167,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2495, + "id": 469, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "620:4:5", + "src": "568:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15027,12 +15181,12 @@ }, { "constant": false, - "id": 2498, + "id": 472, "indexed": false, "name": "commitEndDate", "nodeType": "VariableDeclaration", - "scope": 2506, - "src": "637:18:5", + "scope": 480, + "src": "585:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15040,10 +15194,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2497, + "id": 471, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "637:4:5", + "src": "585:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15054,12 +15208,12 @@ }, { "constant": false, - "id": 2500, + "id": 474, "indexed": false, "name": "revealEndDate", "nodeType": "VariableDeclaration", - "scope": 2506, - "src": "657:18:5", + "scope": 480, + "src": "605:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15067,10 +15221,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2499, + "id": 473, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "657:4:5", + "src": "605:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15081,12 +15235,12 @@ }, { "constant": false, - "id": 2502, + "id": 476, "indexed": true, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 2506, - "src": "677:19:5", + "scope": 480, + "src": "625:19:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15094,10 +15248,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2501, + "id": 475, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "677:4:5", + "src": "625:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15108,12 +15262,12 @@ }, { "constant": false, - "id": 2504, + "id": 478, "indexed": true, "name": "creator", "nodeType": "VariableDeclaration", - "scope": 2506, - "src": "698:23:5", + "scope": 480, + "src": "646:23:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15121,10 +15275,10 @@ "typeString": "address" }, "typeName": { - "id": 2503, + "id": 477, "name": "address", "nodeType": "ElementaryTypeName", - "src": "698:7:5", + "src": "646:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15134,28 +15288,28 @@ "visibility": "internal" } ], - "src": "619:103:5" + "src": "567:103:4" }, - "src": "601:122:5" + "src": "549:122:4" }, { "anonymous": false, "documentation": null, - "id": 2512, + "id": 486, "name": "_VotingRightsGranted", "nodeType": "EventDefinition", "parameters": { - "id": 2511, + "id": 485, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2508, + "id": 482, "indexed": false, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 2512, - "src": "755:14:5", + "scope": 486, + "src": "701:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15163,10 +15317,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2507, + "id": 481, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "755:4:5", + "src": "701:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15177,12 +15331,12 @@ }, { "constant": false, - "id": 2510, + "id": 484, "indexed": true, "name": "voter", "nodeType": "VariableDeclaration", - "scope": 2512, - "src": "771:21:5", + "scope": 486, + "src": "717:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15190,10 +15344,10 @@ "typeString": "address" }, "typeName": { - "id": 2509, + "id": 483, "name": "address", "nodeType": "ElementaryTypeName", - "src": "771:7:5", + "src": "717:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15203,28 +15357,28 @@ "visibility": "internal" } ], - "src": "754:39:5" + "src": "700:39:4" }, - "src": "728:66:5" + "src": "674:66:4" }, { "anonymous": false, "documentation": null, - "id": 2518, + "id": 492, "name": "_VotingRightsWithdrawn", "nodeType": "EventDefinition", "parameters": { - "id": 2517, + "id": 491, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2514, + "id": 488, "indexed": false, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 2518, - "src": "828:14:5", + "scope": 492, + "src": "772:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15232,10 +15386,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2513, + "id": 487, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "828:4:5", + "src": "772:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15246,12 +15400,12 @@ }, { "constant": false, - "id": 2516, + "id": 490, "indexed": true, "name": "voter", "nodeType": "VariableDeclaration", - "scope": 2518, - "src": "844:21:5", + "scope": 492, + "src": "788:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15259,10 +15413,10 @@ "typeString": "address" }, "typeName": { - "id": 2515, + "id": 489, "name": "address", "nodeType": "ElementaryTypeName", - "src": "844:7:5", + "src": "788:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15272,28 +15426,28 @@ "visibility": "internal" } ], - "src": "827:39:5" + "src": "771:39:4" }, - "src": "799:68:5" + "src": "743:68:4" }, { "anonymous": false, "documentation": null, - "id": 2524, + "id": 498, "name": "_TokensRescued", "nodeType": "EventDefinition", "parameters": { - "id": 2523, + "id": 497, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2520, + "id": 494, "indexed": true, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 2524, - "src": "893:19:5", + "scope": 498, + "src": "835:19:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15301,10 +15455,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2519, + "id": 493, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "893:4:5", + "src": "835:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15315,12 +15469,12 @@ }, { "constant": false, - "id": 2522, + "id": 496, "indexed": true, "name": "voter", "nodeType": "VariableDeclaration", - "scope": 2524, - "src": "914:21:5", + "scope": 498, + "src": "856:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15328,10 +15482,10 @@ "typeString": "address" }, "typeName": { - "id": 2521, + "id": 495, "name": "address", "nodeType": "ElementaryTypeName", - "src": "914:7:5", + "src": "856:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15341,89 +15495,89 @@ "visibility": "internal" } ], - "src": "892:44:5" + "src": "834:44:4" }, - "src": "872:65:5" + "src": "814:65:4" }, { - "id": 2527, + "id": 501, "libraryName": { "contractScope": null, - "id": 2525, + "id": 499, "name": "AttributeStore", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2165, - "src": "1014:14:5", + "referencedDeclaration": 64, + "src": "948:14:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_AttributeStore_$2165", + "typeIdentifier": "t_contract$_AttributeStore_$64", "typeString": "library AttributeStore" } }, "nodeType": "UsingForDirective", - "src": "1008:45:5", + "src": "942:45:4", "typeName": { "contractScope": null, - "id": 2526, + "id": 500, "name": "AttributeStore.Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2113, - "src": "1033:19:5", + "referencedDeclaration": 6, + "src": "967:19:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data" } } }, { - "id": 2530, + "id": 504, "libraryName": { "contractScope": null, - "id": 2528, + "id": 502, "name": "DLL", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2466, - "src": "1064:3:5", + "referencedDeclaration": 365, + "src": "996:3:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_DLL_$2466", + "typeIdentifier": "t_contract$_DLL_$365", "typeString": "library DLL" } }, "nodeType": "UsingForDirective", - "src": "1058:23:5", + "src": "990:23:4", "typeName": { "contractScope": null, - "id": 2529, + "id": 503, "name": "DLL.Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "1072:8:5", + "referencedDeclaration": 79, + "src": "1004:8:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } } }, { - "id": 2533, + "id": 507, "libraryName": { "contractScope": null, - "id": 2531, + "id": 505, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3877, - "src": "1092:8:5", + "referencedDeclaration": 3687, + "src": "1022:8:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$3877", + "typeIdentifier": "t_contract$_SafeMath_$3687", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", - "src": "1086:24:5", + "src": "1016:24:4", "typeName": { - "id": 2532, + "id": 506, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1105:4:5", + "src": "1035:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15432,15 +15586,15 @@ }, { "canonicalName": "PLCRVoting.Poll", - "id": 2552, + "id": 526, "members": [ { "constant": false, - "id": 2535, + "id": 509, "name": "commitEndDate", "nodeType": "VariableDeclaration", - "scope": 2552, - "src": "1138:18:5", + "scope": 526, + "src": "1062:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15448,10 +15602,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2534, + "id": 508, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1138:4:5", + "src": "1062:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15462,11 +15616,11 @@ }, { "constant": false, - "id": 2537, + "id": 511, "name": "revealEndDate", "nodeType": "VariableDeclaration", - "scope": 2552, - "src": "1216:18:5", + "scope": 526, + "src": "1136:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15474,10 +15628,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2536, + "id": 510, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1216:4:5", + "src": "1136:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15488,11 +15642,11 @@ }, { "constant": false, - "id": 2539, + "id": 513, "name": "voteQuorum", "nodeType": "VariableDeclaration", - "scope": 2552, - "src": "1294:15:5", + "scope": 526, + "src": "1210:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15500,10 +15654,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2538, + "id": 512, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1294:4:5", + "src": "1210:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15514,11 +15668,11 @@ }, { "constant": false, - "id": 2541, + "id": 515, "name": "votesFor", "nodeType": "VariableDeclaration", - "scope": 2552, - "src": "1375:13:5", + "scope": 526, + "src": "1286:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15526,10 +15680,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2540, + "id": 514, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1375:4:5", + "src": "1286:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15540,11 +15694,11 @@ }, { "constant": false, - "id": 2543, + "id": 517, "name": "votesAgainst", "nodeType": "VariableDeclaration", - "scope": 2552, - "src": "1442:17:5", + "scope": 526, + "src": "1347:17:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15552,10 +15706,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2542, + "id": 516, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1442:4:5", + "src": "1347:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15566,11 +15720,11 @@ }, { "constant": false, - "id": 2547, + "id": 521, "name": "didCommit", "nodeType": "VariableDeclaration", - "scope": 2552, - "src": "1513:34:5", + "scope": 526, + "src": "1414:34:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15578,28 +15732,28 @@ "typeString": "mapping(address => bool)" }, "typeName": { - "id": 2546, + "id": 520, "keyType": { - "id": 2544, + "id": 518, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1521:7:5", + "src": "1422:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1513:24:5", + "src": "1414:24:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" }, "valueType": { - "id": 2545, + "id": 519, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1532:4:5", + "src": "1433:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15611,11 +15765,11 @@ }, { "constant": false, - "id": 2551, + "id": 525, "name": "didReveal", "nodeType": "VariableDeclaration", - "scope": 2552, - "src": "1622:34:5", + "scope": 526, + "src": "1519:34:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15623,28 +15777,28 @@ "typeString": "mapping(address => bool)" }, "typeName": { - "id": 2550, + "id": 524, "keyType": { - "id": 2548, + "id": 522, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1630:7:5", + "src": "1527:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1622:24:5", + "src": "1519:24:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" }, "valueType": { - "id": 2549, + "id": 523, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1641:4:5", + "src": "1538:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15657,17 +15811,17 @@ ], "name": "Poll", "nodeType": "StructDefinition", - "scope": 3488, - "src": "1116:612:5", + "scope": 1471, + "src": "1044:579:4", "visibility": "public" }, { "constant": true, - "id": 2555, + "id": 529, "name": "INITIAL_POLL_NONCE", "nodeType": "VariableDeclaration", - "scope": 3488, - "src": "1799:43:5", + "scope": 1471, + "src": "1686:43:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -15675,10 +15829,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2553, + "id": 527, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1799:4:5", + "src": "1686:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15687,14 +15841,14 @@ "value": { "argumentTypes": null, "hexValue": "30", - "id": 2554, + "id": 528, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1841:1:5", + "src": "1728:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -15706,11 +15860,11 @@ }, { "constant": false, - "id": 2557, + "id": 531, "name": "pollNonce", "nodeType": "VariableDeclaration", - "scope": 3488, - "src": "1848:21:5", + "scope": 1471, + "src": "1733:21:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -15718,10 +15872,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2556, + "id": 530, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1848:4:5", + "src": "1733:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15732,44 +15886,44 @@ }, { "constant": false, - "id": 2561, + "id": 535, "name": "pollMap", "nodeType": "VariableDeclaration", - "scope": 3488, - "src": "1876:36:5", + "scope": 1471, + "src": "1759:36:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll)" }, "typeName": { - "id": 2560, + "id": 534, "keyType": { - "id": 2558, + "id": 532, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1884:4:5", + "src": "1767:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Mapping", - "src": "1876:21:5", + "src": "1759:21:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll)" }, "valueType": { "contractScope": null, - "id": 2559, + "id": 533, "name": "Poll", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2552, - "src": "1892:4:5", + "referencedDeclaration": 526, + "src": "1775:4:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage_ptr", + "typeIdentifier": "t_struct$_Poll_$526_storage_ptr", "typeString": "struct PLCRVoting.Poll" } } @@ -15779,11 +15933,11 @@ }, { "constant": false, - "id": 2565, + "id": 539, "name": "voteTokenBalance", "nodeType": "VariableDeclaration", - "scope": 3488, - "src": "1948:48:5", + "scope": 1471, + "src": "1829:48:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -15791,28 +15945,28 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 2564, + "id": 538, "keyType": { - "id": 2562, + "id": 536, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1956:7:5", + "src": "1837:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1948:24:5", + "src": "1829:24:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 2563, + "id": 537, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1967:4:5", + "src": "1848:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15824,44 +15978,44 @@ }, { "constant": false, - "id": 2569, + "id": 543, "name": "dllMap", "nodeType": "VariableDeclaration", - "scope": 3488, - "src": "2047:35:5", + "scope": 1471, + "src": "1926:35:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data)" }, "typeName": { - "id": 2568, + "id": 542, "keyType": { - "id": 2566, + "id": 540, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2055:7:5", + "src": "1934:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "2047:28:5", + "src": "1926:28:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data)" }, "valueType": { "contractScope": null, - "id": 2567, + "id": 541, "name": "DLL.Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2180, - "src": "2066:8:5", + "referencedDeclaration": 79, + "src": "1945:8:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage_ptr", + "typeIdentifier": "t_struct$_Data_$79_storage_ptr", "typeString": "struct DLL.Data" } } @@ -15871,26 +16025,26 @@ }, { "constant": false, - "id": 2571, + "id": 545, "name": "store", "nodeType": "VariableDeclaration", - "scope": 3488, - "src": "2088:25:5", + "scope": 1471, + "src": "1965:25:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage", + "typeIdentifier": "t_struct$_Data_$6_storage", "typeString": "struct AttributeStore.Data" }, "typeName": { "contractScope": null, - "id": 2570, + "id": 544, "name": "AttributeStore.Data", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2113, - "src": "2088:19:5", + "referencedDeclaration": 6, + "src": "1965:19:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage_ptr", + "typeIdentifier": "t_struct$_Data_$6_storage_ptr", "typeString": "struct AttributeStore.Data" } }, @@ -15899,27 +16053,27 @@ }, { "constant": false, - "id": 2573, + "id": 547, "name": "token", "nodeType": "VariableDeclaration", - "scope": 3488, - "src": "2120:27:5", + "scope": 1471, + "src": "1995:18:4", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" }, "typeName": { "contractScope": null, - "id": 2572, - "name": "EIP20Interface", + "id": 546, + "name": "ERC20", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3782, - "src": "2120:14:5", + "referencedDeclaration": 408, + "src": "1995:5:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, "value": null, @@ -15927,29 +16081,29 @@ }, { "body": { - "id": 2588, + "id": 562, "nodeType": "Block", - "src": "2483:91:5", + "src": "2325:72:4", "statements": [ { "expression": { "argumentTypes": null, - "id": 2582, + "id": 556, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2578, + "id": 552, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "2493:5:5", + "referencedDeclaration": 547, + "src": "2331:5:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, "nodeType": "Assignment", @@ -15959,12 +16113,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2580, + "id": 554, "name": "_tokenAddr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2575, - "src": "2516:10:5", + "referencedDeclaration": 549, + "src": "2345:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15978,18 +16132,18 @@ "typeString": "address" } ], - "id": 2579, - "name": "EIP20Interface", + "id": 553, + "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3782, - "src": "2501:14:5", + "referencedDeclaration": 408, + "src": "2339:5:4", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_EIP20Interface_$3782_$", - "typeString": "type(contract EIP20Interface)" + "typeIdentifier": "t_type$_t_contract$_ERC20_$408_$", + "typeString": "type(contract ERC20)" } }, - "id": 2581, + "id": 555, "isConstant": false, "isLValue": false, "isPure": false, @@ -15997,38 +16151,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2501:26:5", + "src": "2339:17:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "src": "2493:34:5", + "src": "2331:25:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 2583, + "id": 557, "nodeType": "ExpressionStatement", - "src": "2493:34:5" + "src": "2331:25:4" }, { "expression": { "argumentTypes": null, - "id": 2586, + "id": 560, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2584, + "id": 558, "name": "pollNonce", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "2537:9:5", + "referencedDeclaration": 531, + "src": "2362:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16038,48 +16192,48 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 2585, + "id": 559, "name": "INITIAL_POLL_NONCE", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2555, - "src": "2549:18:5", + "referencedDeclaration": 529, + "src": "2374:18:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2537:30:5", + "src": "2362:30:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2587, + "id": 561, "nodeType": "ExpressionStatement", - "src": "2537:30:5" + "src": "2362:30:4" } ] }, "documentation": "@dev Initializes voteQuorum, commitDuration, revealDuration, and pollNonce in addition to token contract and trusted mapping\n@param _tokenAddr The address where the ERC20 token contract is deployed", - "id": 2589, + "id": 563, "implemented": true, "isConstructor": true, "isDeclaredConst": false, "modifiers": [], - "name": "PLCRVoting", + "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 2576, + "id": 550, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2575, + "id": 549, "name": "_tokenAddr", "nodeType": "VariableDeclaration", - "scope": 2589, - "src": "2456:18:5", + "scope": 563, + "src": "2298:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16087,10 +16241,10 @@ "typeString": "address" }, "typeName": { - "id": 2574, + "id": 548, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2456:7:5", + "src": "2298:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16100,26 +16254,26 @@ "visibility": "internal" } ], - "src": "2455:20:5" + "src": "2297:20:4" }, "payable": false, "returnParameters": { - "id": 2577, + "id": 551, "nodeType": "ParameterList", "parameters": [], - "src": "2483:0:5" + "src": "2325:0:4" }, - "scope": 3488, - "src": "2436:138:5", + "scope": 1471, + "src": "2286:111:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2627, + "id": 601, "nodeType": "Block", - "src": "2992:240:5", + "src": "2797:227:4", "statements": [ { "expression": { @@ -16131,7 +16285,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2601, + "id": 575, "isConstant": false, "isLValue": false, "isPure": false, @@ -16143,18 +16297,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2597, + "id": 571, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3026:3:5", + "referencedDeclaration": 3702, + "src": "2827:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2598, + "id": 572, "isConstant": false, "isLValue": false, "isPure": false, @@ -16162,7 +16316,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3026:10:5", + "src": "2827:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16178,32 +16332,32 @@ ], "expression": { "argumentTypes": null, - "id": 2595, + "id": 569, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "3010:5:5", + "referencedDeclaration": 547, + "src": "2811:5:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 2596, + "id": 570, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 3727, - "src": "3010:15:5", + "referencedDeclaration": 422, + "src": "2811:15:4", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 2599, + "id": 573, "isConstant": false, "isLValue": false, "isPure": false, @@ -16211,7 +16365,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3010:27:5", + "src": "2811:27:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16221,18 +16375,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 2600, + "id": 574, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "3041:10:5", + "referencedDeclaration": 565, + "src": "2842:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3010:41:5", + "src": "2811:41:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16246,21 +16400,21 @@ "typeString": "bool" } ], - "id": 2594, + "id": 568, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "3002:7:5", + "referencedDeclaration": 3705, + "src": "2803:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2602, + "id": 576, "isConstant": false, "isLValue": false, "isPure": false, @@ -16268,20 +16422,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3002:50:5", + "src": "2803:50:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2603, + "id": 577, "nodeType": "ExpressionStatement", - "src": "3002:50:5" + "src": "2803:50:4" }, { "expression": { "argumentTypes": null, - "id": 2609, + "id": 583, "isConstant": false, "isLValue": false, "isPure": false, @@ -16290,34 +16444,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2604, + "id": 578, "name": "voteTokenBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2565, - "src": "3062:16:5", + "referencedDeclaration": 539, + "src": "2859:16:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2607, + "id": 581, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2605, + "id": 579, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3079:3:5", + "referencedDeclaration": 3702, + "src": "2876:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2606, + "id": 580, "isConstant": false, "isLValue": false, "isPure": false, @@ -16325,7 +16479,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3079:10:5", + "src": "2876:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16336,7 +16490,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "3062:28:5", + "src": "2859:28:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16346,26 +16500,26 @@ "operator": "+=", "rightHandSide": { "argumentTypes": null, - "id": 2608, + "id": 582, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "3094:10:5", + "referencedDeclaration": 565, + "src": "2891:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3062:42:5", + "src": "2859:42:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2610, + "id": 584, "nodeType": "ExpressionStatement", - "src": "3062:42:5" + "src": "2859:42:4" }, { "expression": { @@ -16378,18 +16532,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2614, + "id": 588, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3141:3:5", + "referencedDeclaration": 3702, + "src": "2934:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2615, + "id": 589, "isConstant": false, "isLValue": false, "isPure": false, @@ -16397,7 +16551,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3141:10:5", + "src": "2934:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16405,25 +16559,25 @@ }, { "argumentTypes": null, - "id": 2616, + "id": 590, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3917, - "src": "3153:4:5", + "referencedDeclaration": 3725, + "src": "2946:4:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, { "argumentTypes": null, - "id": 2617, + "id": 591, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "3159:10:5", + "referencedDeclaration": 565, + "src": "2952:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16437,7 +16591,7 @@ "typeString": "address" }, { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" }, { @@ -16447,32 +16601,32 @@ ], "expression": { "argumentTypes": null, - "id": 2612, + "id": 586, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "3122:5:5", + "referencedDeclaration": 547, + "src": "2915:5:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 2613, + "id": 587, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 3747, - "src": "3122:18:5", + "referencedDeclaration": 390, + "src": "2915:18:4", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 2618, + "id": 592, "isConstant": false, "isLValue": false, "isPure": false, @@ -16480,7 +16634,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3122:48:5", + "src": "2915:48:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16494,21 +16648,21 @@ "typeString": "bool" } ], - "id": 2611, + "id": 585, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "3114:7:5", + "referencedDeclaration": 3705, + "src": "2907:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2619, + "id": 593, "isConstant": false, "isLValue": false, "isPure": false, @@ -16516,28 +16670,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3114:57:5", + "src": "2907:57:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2620, + "id": 594, "nodeType": "ExpressionStatement", - "src": "3114:57:5" + "src": "2907:57:4" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2622, + "id": 596, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2591, - "src": "3202:10:5", + "referencedDeclaration": 565, + "src": "2996:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16547,18 +16701,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2623, + "id": 597, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3214:3:5", + "referencedDeclaration": 3702, + "src": "3008:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2624, + "id": 598, "isConstant": false, "isLValue": false, "isPure": false, @@ -16566,7 +16720,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3214:10:5", + "src": "3008:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16584,18 +16738,18 @@ "typeString": "address" } ], - "id": 2621, + "id": 595, "name": "_VotingRightsGranted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2512, - "src": "3181:20:5", + "referencedDeclaration": 486, + "src": "2975:20:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,address)" } }, - "id": 2625, + "id": 599, "isConstant": false, "isLValue": false, "isPure": false, @@ -16603,20 +16757,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3181:44:5", + "src": "2975:44:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2626, - "nodeType": "ExpressionStatement", - "src": "3181:44:5" + "id": 600, + "nodeType": "EmitStatement", + "src": "2970:49:4" } ] }, "documentation": "@notice Loads _numTokens ERC20 tokens into the voting contract for one-to-one voting rights\n@dev Assumes that msg.sender has approved voting contract to spend on their behalf\n@param _numTokens The number of votingTokens desired in exchange for ERC20 tokens", - "id": 2628, + "id": 602, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -16624,16 +16778,16 @@ "name": "requestVotingRights", "nodeType": "FunctionDefinition", "parameters": { - "id": 2592, + "id": 566, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2591, + "id": 565, "name": "_numTokens", "nodeType": "VariableDeclaration", - "scope": 2628, - "src": "2966:15:5", + "scope": 602, + "src": "2771:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16641,10 +16795,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2590, + "id": 564, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2966:4:5", + "src": "2771:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16654,39 +16808,39 @@ "visibility": "internal" } ], - "src": "2965:17:5" + "src": "2770:17:4" }, "payable": false, "returnParameters": { - "id": 2593, + "id": 567, "nodeType": "ParameterList", "parameters": [], - "src": "2992:0:5" + "src": "2797:0:4" }, - "scope": 3488, - "src": "2937:295:5", + "scope": 1471, + "src": "2742:282:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 2674, + "id": 648, "nodeType": "Block", - "src": "3496:314:5", + "src": "3278:297:4", "statements": [ { "assignments": [ - 2634 + 608 ], "declarations": [ { "constant": false, - "id": 2634, + "id": 608, "name": "availableTokens", "nodeType": "VariableDeclaration", - "scope": 2675, - "src": "3506:20:5", + "scope": 649, + "src": "3284:20:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16694,10 +16848,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2633, + "id": 607, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3506:4:5", + "src": "3284:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16707,7 +16861,7 @@ "visibility": "internal" } ], - "id": 2645, + "id": 619, "initialValue": { "argumentTypes": null, "arguments": [ @@ -16718,18 +16872,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2641, + "id": 615, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3578:3:5", + "referencedDeclaration": 3702, + "src": "3356:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2642, + "id": 616, "isConstant": false, "isLValue": false, "isPure": false, @@ -16737,7 +16891,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3578:10:5", + "src": "3356:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16751,18 +16905,18 @@ "typeString": "address" } ], - "id": 2640, + "id": 614, "name": "getLockedTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3389, - "src": "3562:15:5", + "referencedDeclaration": 1369, + "src": "3340:15:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 2643, + "id": 617, "isConstant": false, "isLValue": false, "isPure": false, @@ -16770,7 +16924,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3562:27:5", + "src": "3340:27:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16788,34 +16942,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2635, + "id": 609, "name": "voteTokenBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2565, - "src": "3529:16:5", + "referencedDeclaration": 539, + "src": "3307:16:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2638, + "id": 612, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2636, + "id": 610, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3546:3:5", + "referencedDeclaration": 3702, + "src": "3324:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2637, + "id": 611, "isConstant": false, "isLValue": false, "isPure": false, @@ -16823,7 +16977,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3546:10:5", + "src": "3324:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16834,27 +16988,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3529:28:5", + "src": "3307:28:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2639, + "id": 613, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 3852, - "src": "3529:32:5", + "referencedDeclaration": 3662, + "src": "3307:32:4", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 2644, + "id": 618, "isConstant": false, "isLValue": false, "isPure": false, @@ -16862,14 +17016,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3529:61:5", + "src": "3307:61:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "3506:84:5" + "src": "3284:84:4" }, { "expression": { @@ -16881,19 +17035,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2649, + "id": 623, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2647, + "id": 621, "name": "availableTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2634, - "src": "3608:15:5", + "referencedDeclaration": 608, + "src": "3382:15:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16903,18 +17057,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 2648, + "id": 622, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "3627:10:5", + "referencedDeclaration": 604, + "src": "3401:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3608:29:5", + "src": "3382:29:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16928,21 +17082,21 @@ "typeString": "bool" } ], - "id": 2646, + "id": 620, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "3600:7:5", + "referencedDeclaration": 3705, + "src": "3374:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2650, + "id": 624, "isConstant": false, "isLValue": false, "isPure": false, @@ -16950,20 +17104,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3600:38:5", + "src": "3374:38:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2651, + "id": 625, "nodeType": "ExpressionStatement", - "src": "3600:38:5" + "src": "3374:38:4" }, { "expression": { "argumentTypes": null, - "id": 2657, + "id": 631, "isConstant": false, "isLValue": false, "isPure": false, @@ -16972,34 +17126,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2652, + "id": 626, "name": "voteTokenBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2565, - "src": "3648:16:5", + "referencedDeclaration": 539, + "src": "3418:16:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2655, + "id": 629, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2653, + "id": 627, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3665:3:5", + "referencedDeclaration": 3702, + "src": "3435:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2654, + "id": 628, "isConstant": false, "isLValue": false, "isPure": false, @@ -17007,7 +17161,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3665:10:5", + "src": "3435:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17018,7 +17172,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "3648:28:5", + "src": "3418:28:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17028,26 +17182,26 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 2656, + "id": 630, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "3680:10:5", + "referencedDeclaration": 604, + "src": "3450:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3648:42:5", + "src": "3418:42:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2658, + "id": 632, "nodeType": "ExpressionStatement", - "src": "3648:42:5" + "src": "3418:42:4" }, { "expression": { @@ -17060,18 +17214,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2662, + "id": 636, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3723:3:5", + "referencedDeclaration": 3702, + "src": "3489:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2663, + "id": 637, "isConstant": false, "isLValue": false, "isPure": false, @@ -17079,7 +17233,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3723:10:5", + "src": "3489:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17087,12 +17241,12 @@ }, { "argumentTypes": null, - "id": 2664, + "id": 638, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "3735:10:5", + "referencedDeclaration": 604, + "src": "3501:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17112,32 +17266,32 @@ ], "expression": { "argumentTypes": null, - "id": 2660, + "id": 634, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2573, - "src": "3708:5:5", + "referencedDeclaration": 547, + "src": "3474:5:4", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 2661, + "id": 635, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "3708:14:5", + "referencedDeclaration": 431, + "src": "3474:14:4", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 2665, + "id": 639, "isConstant": false, "isLValue": false, "isPure": false, @@ -17145,7 +17299,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3708:38:5", + "src": "3474:38:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17159,21 +17313,21 @@ "typeString": "bool" } ], - "id": 2659, + "id": 633, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "3700:7:5", + "referencedDeclaration": 3705, + "src": "3466:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2666, + "id": 640, "isConstant": false, "isLValue": false, "isPure": false, @@ -17181,28 +17335,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3700:47:5", + "src": "3466:47:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2667, + "id": 641, "nodeType": "ExpressionStatement", - "src": "3700:47:5" + "src": "3466:47:4" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2669, + "id": 643, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2630, - "src": "3780:10:5", + "referencedDeclaration": 604, + "src": "3547:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17212,18 +17366,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2670, + "id": 644, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3792:3:5", + "referencedDeclaration": 3702, + "src": "3559:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2671, + "id": 645, "isConstant": false, "isLValue": false, "isPure": false, @@ -17231,7 +17385,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3792:10:5", + "src": "3559:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17249,18 +17403,18 @@ "typeString": "address" } ], - "id": 2668, + "id": 642, "name": "_VotingRightsWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2518, - "src": "3757:22:5", + "referencedDeclaration": 492, + "src": "3524:22:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,address)" } }, - "id": 2672, + "id": 646, "isConstant": false, "isLValue": false, "isPure": false, @@ -17268,20 +17422,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3757:46:5", + "src": "3524:46:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2673, - "nodeType": "ExpressionStatement", - "src": "3757:46:5" + "id": 647, + "nodeType": "EmitStatement", + "src": "3519:51:4" } ] }, "documentation": "@notice Withdraw _numTokens ERC20 tokens from the voting contract, revoking these voting rights\n@param _numTokens The number of ERC20 tokens desired in exchange for voting rights", - "id": 2675, + "id": 649, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -17289,16 +17443,16 @@ "name": "withdrawVotingRights", "nodeType": "FunctionDefinition", "parameters": { - "id": 2631, + "id": 605, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2630, + "id": 604, "name": "_numTokens", "nodeType": "VariableDeclaration", - "scope": 2675, - "src": "3470:15:5", + "scope": 649, + "src": "3252:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17306,10 +17460,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2629, + "id": 603, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3470:4:5", + "src": "3252:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17319,26 +17473,26 @@ "visibility": "internal" } ], - "src": "3469:17:5" + "src": "3251:17:4" }, "payable": false, "returnParameters": { - "id": 2632, + "id": 606, "nodeType": "ParameterList", "parameters": [], - "src": "3496:0:5" + "src": "3278:0:4" }, - "scope": 3488, - "src": "3440:370:5", + "scope": 1471, + "src": "3222:353:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 2713, + "id": 687, "nodeType": "Block", - "src": "4017:212:5", + "src": "3772:199:4", "statements": [ { "expression": { @@ -17353,26 +17507,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2682, + "id": 656, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "4045:7:5", + "referencedDeclaration": 535, + "src": "3796:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2684, + "id": 658, "indexExpression": { "argumentTypes": null, - "id": 2683, + "id": 657, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2677, - "src": "4053:7:5", + "referencedDeclaration": 651, + "src": "3804:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17383,21 +17537,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4045:16:5", + "src": "3796:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2685, + "id": 659, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "revealEndDate", "nodeType": "MemberAccess", - "referencedDeclaration": 2537, - "src": "4045:30:5", + "referencedDeclaration": 511, + "src": "3796:30:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17411,18 +17565,18 @@ "typeString": "uint256" } ], - "id": 2681, + "id": 655, "name": "isExpired", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3472, - "src": "4035:9:5", + "referencedDeclaration": 1452, + "src": "3786:9:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 2686, + "id": 660, "isConstant": false, "isLValue": false, "isPure": false, @@ -17430,7 +17584,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4035:41:5", + "src": "3786:41:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17444,21 +17598,21 @@ "typeString": "bool" } ], - "id": 2680, + "id": 654, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4027:7:5", + "referencedDeclaration": 3705, + "src": "3778:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2687, + "id": 661, "isConstant": false, "isLValue": false, "isPure": false, @@ -17466,15 +17620,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4027:50:5", + "src": "3778:50:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2688, + "id": 662, "nodeType": "ExpressionStatement", - "src": "4027:50:5" + "src": "3778:50:4" }, { "expression": { @@ -17485,12 +17639,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2695, + "id": 669, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2677, - "src": "4123:7:5", + "referencedDeclaration": 651, + "src": "3870:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17508,34 +17662,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2690, + "id": 664, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "4095:6:5", + "referencedDeclaration": 543, + "src": "3842:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 2693, + "id": 667, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2691, + "id": 665, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4102:3:5", + "referencedDeclaration": 3702, + "src": "3849:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2692, + "id": 666, "isConstant": false, "isLValue": false, "isPure": false, @@ -17543,7 +17697,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4102:10:5", + "src": "3849:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17554,27 +17708,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4095:18:5", + "src": "3842:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 2694, + "id": 668, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "contains", "nodeType": "MemberAccess", - "referencedDeclaration": 2254, - "src": "4095:27:5", + "referencedDeclaration": 153, + "src": "3842:27:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (bool)" } }, - "id": 2696, + "id": 670, "isConstant": false, "isLValue": false, "isPure": false, @@ -17582,7 +17736,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4095:36:5", + "src": "3842:36:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17596,21 +17750,21 @@ "typeString": "bool" } ], - "id": 2689, + "id": 663, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4087:7:5", + "referencedDeclaration": 3705, + "src": "3834:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2697, + "id": 671, "isConstant": false, "isLValue": false, "isPure": false, @@ -17618,15 +17772,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4087:45:5", + "src": "3834:45:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2698, + "id": 672, "nodeType": "ExpressionStatement", - "src": "4087:45:5" + "src": "3834:45:4" }, { "expression": { @@ -17634,12 +17788,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2704, + "id": 678, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2677, - "src": "4169:7:5", + "referencedDeclaration": 651, + "src": "3912:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17657,34 +17811,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2699, + "id": 673, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "4143:6:5", + "referencedDeclaration": 543, + "src": "3886:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 2702, + "id": 676, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2700, + "id": 674, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4150:3:5", + "referencedDeclaration": 3702, + "src": "3893:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2701, + "id": 675, "isConstant": false, "isLValue": false, "isPure": false, @@ -17692,7 +17846,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4150:10:5", + "src": "3893:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17703,27 +17857,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4143:18:5", + "src": "3886:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 2703, + "id": 677, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "remove", "nodeType": "MemberAccess", - "referencedDeclaration": 2465, - "src": "4143:25:5", + "referencedDeclaration": 364, + "src": "3886:25:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256)" } }, - "id": 2705, + "id": 679, "isConstant": false, "isLValue": false, "isPure": false, @@ -17731,28 +17885,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4143:34:5", + "src": "3886:34:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2706, + "id": 680, "nodeType": "ExpressionStatement", - "src": "4143:34:5" + "src": "3886:34:4" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2708, + "id": 682, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2677, - "src": "4202:7:5", + "referencedDeclaration": 651, + "src": "3946:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17762,18 +17916,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2709, + "id": 683, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4211:3:5", + "referencedDeclaration": 3702, + "src": "3955:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2710, + "id": 684, "isConstant": false, "isLValue": false, "isPure": false, @@ -17781,7 +17935,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4211:10:5", + "src": "3955:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17799,18 +17953,18 @@ "typeString": "address" } ], - "id": 2707, + "id": 681, "name": "_TokensRescued", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2524, - "src": "4187:14:5", + "referencedDeclaration": 498, + "src": "3931:14:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,address)" } }, - "id": 2711, + "id": 685, "isConstant": false, "isLValue": false, "isPure": false, @@ -17818,20 +17972,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4187:35:5", + "src": "3931:35:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2712, - "nodeType": "ExpressionStatement", - "src": "4187:35:5" + "id": 686, + "nodeType": "EmitStatement", + "src": "3926:40:4" } ] }, "documentation": "@dev Unlocks tokens locked in unrevealed vote where poll has ended\n@param _pollID Integer identifier associated with the target poll", - "id": 2714, + "id": 688, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -17839,16 +17993,16 @@ "name": "rescueTokens", "nodeType": "FunctionDefinition", "parameters": { - "id": 2678, + "id": 652, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2677, + "id": 651, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 2714, - "src": "3994:12:5", + "scope": 688, + "src": "3749:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17856,10 +18010,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2676, + "id": 650, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3994:4:5", + "src": "3749:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17869,26 +18023,26 @@ "visibility": "internal" } ], - "src": "3993:14:5" + "src": "3748:14:4" }, "payable": false, "returnParameters": { - "id": 2679, + "id": 653, "nodeType": "ParameterList", "parameters": [], - "src": "4017:0:5" + "src": "3772:0:4" }, - "scope": 3488, - "src": "3972:257:5", + "scope": 1471, + "src": "3727:244:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 2849, + "id": 823, "nodeType": "Block", - "src": "4913:1095:5", + "src": "4655:1092:4", "statements": [ { "expression": { @@ -17899,12 +18053,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2727, + "id": 701, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "4950:7:5", + "referencedDeclaration": 690, + "src": "4688:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17918,18 +18072,18 @@ "typeString": "uint256" } ], - "id": 2726, + "id": 700, "name": "commitPeriodActive", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3229, - "src": "4931:18:5", + "referencedDeclaration": 1209, + "src": "4669:18:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 2728, + "id": 702, "isConstant": false, "isLValue": false, "isPure": false, @@ -17937,7 +18091,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4931:27:5", + "src": "4669:27:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17951,21 +18105,21 @@ "typeString": "bool" } ], - "id": 2725, + "id": 699, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4923:7:5", + "referencedDeclaration": 3705, + "src": "4661:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2729, + "id": 703, "isConstant": false, "isLValue": false, "isPure": false, @@ -17973,15 +18127,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4923:36:5", + "src": "4661:36:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2730, + "id": 704, "nodeType": "ExpressionStatement", - "src": "4923:36:5" + "src": "4661:36:4" }, { "expression": { @@ -17993,7 +18147,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2737, + "id": 711, "isConstant": false, "isLValue": false, "isPure": false, @@ -18002,34 +18156,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2732, + "id": 706, "name": "voteTokenBalance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2565, - "src": "4977:16:5", + "referencedDeclaration": 539, + "src": "4711:16:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 2735, + "id": 709, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2733, + "id": 707, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4994:3:5", + "referencedDeclaration": 3702, + "src": "4728:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2734, + "id": 708, "isConstant": false, "isLValue": false, "isPure": false, @@ -18037,7 +18191,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4994:10:5", + "src": "4728:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18048,7 +18202,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4977:28:5", + "src": "4711:28:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18058,18 +18212,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 2736, + "id": 710, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2720, - "src": "5009:10:5", + "referencedDeclaration": 694, + "src": "4743:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4977:42:5", + "src": "4711:42:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18083,21 +18237,21 @@ "typeString": "bool" } ], - "id": 2731, + "id": 705, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4969:7:5", + "referencedDeclaration": 3705, + "src": "4703:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2738, + "id": 712, "isConstant": false, "isLValue": false, "isPure": false, @@ -18105,15 +18259,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4969:51:5", + "src": "4703:51:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2739, + "id": 713, "nodeType": "ExpressionStatement", - "src": "4969:51:5" + "src": "4703:51:4" }, { "expression": { @@ -18125,19 +18279,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2743, + "id": 717, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2741, + "id": 715, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "5072:7:5", + "referencedDeclaration": 690, + "src": "4802:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18148,14 +18302,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2742, + "id": 716, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5083:1:5", + "src": "4813:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -18163,7 +18317,7 @@ }, "value": "0" }, - "src": "5072:12:5", + "src": "4802:12:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18177,21 +18331,21 @@ "typeString": "bool" } ], - "id": 2740, + "id": 714, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5064:7:5", + "referencedDeclaration": 3705, + "src": "4794:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2744, + "id": 718, "isConstant": false, "isLValue": false, "isPure": false, @@ -18199,15 +18353,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5064:21:5", + "src": "4794:21:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2745, + "id": 719, "nodeType": "ExpressionStatement", - "src": "5064:21:5" + "src": "4794:21:4" }, { "expression": { @@ -18219,7 +18373,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2757, + "id": 731, "isConstant": false, "isLValue": false, "isPure": false, @@ -18230,19 +18384,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2749, + "id": 723, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2747, + "id": 721, "name": "_prevPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2722, - "src": "5256:11:5", + "referencedDeclaration": 696, + "src": "4978:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18253,14 +18407,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2748, + "id": 722, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5271:1:5", + "src": "4993:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -18268,7 +18422,7 @@ }, "value": "0" }, - "src": "5256:16:5", + "src": "4978:16:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18281,12 +18435,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2755, + "id": 729, "name": "_prevPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2722, - "src": "5304:11:5", + "referencedDeclaration": 696, + "src": "5026:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18304,34 +18458,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2750, + "id": 724, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "5276:6:5", + "referencedDeclaration": 543, + "src": "4998:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 2753, + "id": 727, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2751, + "id": 725, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5283:3:5", + "referencedDeclaration": 3702, + "src": "5005:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2752, + "id": 726, "isConstant": false, "isLValue": false, "isPure": false, @@ -18339,7 +18493,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5283:10:5", + "src": "5005:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18350,27 +18504,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5276:18:5", + "src": "4998:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 2754, + "id": 728, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "contains", "nodeType": "MemberAccess", - "referencedDeclaration": 2254, - "src": "5276:27:5", + "referencedDeclaration": 153, + "src": "4998:27:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (bool)" } }, - "id": 2756, + "id": 730, "isConstant": false, "isLValue": false, "isPure": false, @@ -18378,13 +18532,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5276:40:5", + "src": "4998:40:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "5256:60:5", + "src": "4978:60:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18398,21 +18552,21 @@ "typeString": "bool" } ], - "id": 2746, + "id": 720, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5248:7:5", + "referencedDeclaration": 3705, + "src": "4970:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2758, + "id": 732, "isConstant": false, "isLValue": false, "isPure": false, @@ -18420,28 +18574,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5248:69:5", + "src": "4970:69:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2759, + "id": 733, "nodeType": "ExpressionStatement", - "src": "5248:69:5" + "src": "4970:69:4" }, { "assignments": [ - 2761 + 735 ], "declarations": [ { "constant": false, - "id": 2761, + "id": 735, "name": "nextPollID", "nodeType": "VariableDeclaration", - "scope": 2850, - "src": "5328:15:5", + "scope": 824, + "src": "5046:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18449,10 +18603,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2760, + "id": 734, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5328:4:5", + "src": "5046:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18462,18 +18616,18 @@ "visibility": "internal" } ], - "id": 2769, + "id": 743, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2767, + "id": 741, "name": "_prevPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2722, - "src": "5373:11:5", + "referencedDeclaration": 696, + "src": "5091:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18491,34 +18645,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2762, + "id": 736, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "5346:6:5", + "referencedDeclaration": 543, + "src": "5064:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 2765, + "id": 739, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2763, + "id": 737, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5353:3:5", + "referencedDeclaration": 3702, + "src": "5071:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2764, + "id": 738, "isConstant": false, "isLValue": false, "isPure": false, @@ -18526,7 +18680,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5353:10:5", + "src": "5071:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18537,27 +18691,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5346:18:5", + "src": "5064:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 2766, + "id": 740, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "getNext", "nodeType": "MemberAccess", - "referencedDeclaration": 2270, - "src": "5346:26:5", + "referencedDeclaration": 169, + "src": "5064:26:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2768, + "id": 742, "isConstant": false, "isLValue": false, "isPure": false, @@ -18565,31 +18719,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5346:39:5", + "src": "5064:39:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "5328:57:5" + "src": "5046:57:4" }, { "expression": { "argumentTypes": null, - "id": 2784, + "id": 758, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 2770, + "id": 744, "name": "nextPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2761, - "src": "5468:10:5", + "referencedDeclaration": 735, + "src": "5178:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18608,19 +18762,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2773, + "id": 747, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2771, + "id": 745, "name": "nextPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2761, - "src": "5482:10:5", + "referencedDeclaration": 735, + "src": "5192:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18630,32 +18784,32 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 2772, + "id": 746, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "5496:7:5", + "referencedDeclaration": 690, + "src": "5206:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5482:21:5", + "src": "5192:21:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2774, + "id": 748, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "5481:23:5", + "src": "5191:23:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18663,35 +18817,35 @@ }, "falseExpression": { "argumentTypes": null, - "id": 2782, + "id": 756, "name": "nextPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2761, - "src": "5545:10:5", + "referencedDeclaration": 735, + "src": "5255:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2783, + "id": 757, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "5481:74:5", + "src": "5191:74:4", "trueExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2780, + "id": 754, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "5534:7:5", + "referencedDeclaration": 690, + "src": "5244:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18709,34 +18863,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2775, + "id": 749, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "5507:6:5", + "referencedDeclaration": 543, + "src": "5217:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 2778, + "id": 752, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2776, + "id": 750, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5514:3:5", + "referencedDeclaration": 3702, + "src": "5224:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2777, + "id": 751, "isConstant": false, "isLValue": false, "isPure": false, @@ -18744,7 +18898,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5514:10:5", + "src": "5224:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18755,27 +18909,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5507:18:5", + "src": "5217:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 2779, + "id": 753, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "getNext", "nodeType": "MemberAccess", - "referencedDeclaration": 2270, - "src": "5507:26:5", + "referencedDeclaration": 169, + "src": "5217:26:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 2781, + "id": 755, "isConstant": false, "isLValue": false, "isPure": false, @@ -18783,7 +18937,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5507:35:5", + "src": "5217:35:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18794,15 +18948,15 @@ "typeString": "uint256" } }, - "src": "5468:87:5", + "src": "5178:87:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2785, + "id": 759, "nodeType": "ExpressionStatement", - "src": "5468:87:5" + "src": "5178:87:4" }, { "expression": { @@ -18813,12 +18967,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2788, + "id": 762, "name": "_prevPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2722, - "src": "5588:11:5", + "referencedDeclaration": 696, + "src": "5310:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18826,12 +18980,12 @@ }, { "argumentTypes": null, - "id": 2789, + "id": 763, "name": "nextPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2761, - "src": "5601:10:5", + "referencedDeclaration": 735, + "src": "5331:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18841,18 +18995,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2790, + "id": 764, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5613:3:5", + "referencedDeclaration": 3702, + "src": "5352:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2791, + "id": 765, "isConstant": false, "isLValue": false, "isPure": false, @@ -18860,7 +19014,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5613:10:5", + "src": "5352:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18868,12 +19022,12 @@ }, { "argumentTypes": null, - "id": 2792, + "id": 766, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2720, - "src": "5625:10:5", + "referencedDeclaration": 694, + "src": "5372:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18899,18 +19053,18 @@ "typeString": "uint256" } ], - "id": 2787, + "id": 761, "name": "validPosition", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2892, - "src": "5574:13:5", + "referencedDeclaration": 866, + "src": "5287:13:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256,uint256,address,uint256) view returns (bool)" } }, - "id": 2793, + "id": 767, "isConstant": false, "isLValue": false, "isPure": false, @@ -18918,7 +19072,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5574:62:5", + "src": "5287:103:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18932,21 +19086,21 @@ "typeString": "bool" } ], - "id": 2786, + "id": 760, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5566:7:5", + "referencedDeclaration": 3705, + "src": "5272:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2794, + "id": 768, "isConstant": false, "isLValue": false, "isPure": false, @@ -18954,15 +19108,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5566:71:5", + "src": "5272:124:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2795, + "id": 769, "nodeType": "ExpressionStatement", - "src": "5566:71:5" + "src": "5272:124:4" }, { "expression": { @@ -18970,12 +19124,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2801, + "id": 775, "name": "_prevPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2722, - "src": "5673:11:5", + "referencedDeclaration": 696, + "src": "5429:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18983,12 +19137,12 @@ }, { "argumentTypes": null, - "id": 2802, + "id": 776, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "5686:7:5", + "referencedDeclaration": 690, + "src": "5442:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18996,12 +19150,12 @@ }, { "argumentTypes": null, - "id": 2803, + "id": 777, "name": "nextPollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2761, - "src": "5695:10:5", + "referencedDeclaration": 735, + "src": "5451:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19027,34 +19181,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2796, + "id": 770, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "5647:6:5", + "referencedDeclaration": 543, + "src": "5403:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 2799, + "id": 773, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2797, + "id": 771, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5654:3:5", + "referencedDeclaration": 3702, + "src": "5410:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2798, + "id": 772, "isConstant": false, "isLValue": false, "isPure": false, @@ -19062,7 +19216,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5654:10:5", + "src": "5410:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19073,27 +19227,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5647:18:5", + "src": "5403:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 2800, + "id": 774, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "insert", "nodeType": "MemberAccess", - "referencedDeclaration": 2411, - "src": "5647:25:5", + "referencedDeclaration": 310, + "src": "5403:25:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256,uint256,uint256)" } }, - "id": 2804, + "id": 778, "isConstant": false, "isLValue": false, "isPure": false, @@ -19101,28 +19255,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5647:59:5", + "src": "5403:59:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2805, + "id": 779, "nodeType": "ExpressionStatement", - "src": "5647:59:5" + "src": "5403:59:4" }, { "assignments": [ - 2807 + 781 ], "declarations": [ { "constant": false, - "id": 2807, + "id": 781, "name": "UUID", "nodeType": "VariableDeclaration", - "scope": 2850, - "src": "5717:12:5", + "scope": 824, + "src": "5469:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19130,10 +19284,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2806, + "id": 780, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5717:7:5", + "src": "5469:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19143,7 +19297,7 @@ "visibility": "internal" } ], - "id": 2813, + "id": 787, "initialValue": { "argumentTypes": null, "arguments": [ @@ -19151,18 +19305,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2809, + "id": 783, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5741:3:5", + "referencedDeclaration": 3702, + "src": "5493:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2810, + "id": 784, "isConstant": false, "isLValue": false, "isPure": false, @@ -19170,7 +19324,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5741:10:5", + "src": "5493:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19178,12 +19332,12 @@ }, { "argumentTypes": null, - "id": 2811, + "id": 785, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "5753:7:5", + "referencedDeclaration": 690, + "src": "5505:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19201,18 +19355,18 @@ "typeString": "uint256" } ], - "id": 2808, + "id": 782, "name": "attrUUID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3487, - "src": "5732:8:5", + "referencedDeclaration": 1470, + "src": "5484:8:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_address_$_t_uint256_$returns$_t_bytes32_$", "typeString": "function (address,uint256) pure returns (bytes32)" } }, - "id": 2812, + "id": 786, "isConstant": false, "isLValue": false, "isPure": false, @@ -19220,14 +19374,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5732:29:5", + "src": "5484:29:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "5717:44:5" + "src": "5469:44:4" }, { "expression": { @@ -19235,12 +19389,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2817, + "id": 791, "name": "UUID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2807, - "src": "5791:4:5", + "referencedDeclaration": 781, + "src": "5539:4:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19249,14 +19403,14 @@ { "argumentTypes": null, "hexValue": "6e756d546f6b656e73", - "id": 2818, + "id": 792, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5797:11:5", + "src": "5545:11:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_aaabf4403cd242796b0e69a57762477ad48e1fa250247ff93eeada3e5b75581a", @@ -19266,12 +19420,12 @@ }, { "argumentTypes": null, - "id": 2819, + "id": 793, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2720, - "src": "5810:10:5", + "referencedDeclaration": 694, + "src": "5558:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19295,32 +19449,32 @@ ], "expression": { "argumentTypes": null, - "id": 2814, + "id": 788, "name": "store", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2571, - "src": "5772:5:5", + "referencedDeclaration": 545, + "src": "5520:5:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage", + "typeIdentifier": "t_struct$_Data_$6_storage", "typeString": "struct AttributeStore.Data storage ref" } }, - "id": 2816, + "id": 790, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "setAttribute", "nodeType": "MemberAccess", - "referencedDeclaration": 2164, - "src": "5772:18:5", + "referencedDeclaration": 63, + "src": "5520:18:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$2113_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$2113_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$6_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$6_storage_ptr_$", "typeString": "function (struct AttributeStore.Data storage pointer,bytes32,string memory,uint256)" } }, - "id": 2820, + "id": 794, "isConstant": false, "isLValue": false, "isPure": false, @@ -19328,15 +19482,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5772:49:5", + "src": "5520:49:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2821, + "id": 795, "nodeType": "ExpressionStatement", - "src": "5772:49:5" + "src": "5520:49:4" }, { "expression": { @@ -19344,12 +19498,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2825, + "id": 799, "name": "UUID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2807, - "src": "5850:4:5", + "referencedDeclaration": 781, + "src": "5594:4:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19358,14 +19512,14 @@ { "argumentTypes": null, "hexValue": "636f6d6d697448617368", - "id": 2826, + "id": 800, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5856:12:5", + "src": "5600:12:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_207714604a0440a484c6569f8718c59de7b49b2f64c69153d0c80360597b39a3", @@ -19378,12 +19532,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2828, + "id": 802, "name": "_secretHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2718, - "src": "5875:11:5", + "referencedDeclaration": 692, + "src": "5619:11:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19397,20 +19551,20 @@ "typeString": "bytes32" } ], - "id": 2827, + "id": 801, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5870:4:5", + "src": "5614:4:4", "typeDescriptions": { "typeIdentifier": "t_type$_t_uint256_$", "typeString": "type(uint256)" }, "typeName": "uint" }, - "id": 2829, + "id": 803, "isConstant": false, "isLValue": false, "isPure": false, @@ -19418,7 +19572,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5870:17:5", + "src": "5614:17:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19442,32 +19596,32 @@ ], "expression": { "argumentTypes": null, - "id": 2822, + "id": 796, "name": "store", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2571, - "src": "5831:5:5", + "referencedDeclaration": 545, + "src": "5575:5:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage", + "typeIdentifier": "t_struct$_Data_$6_storage", "typeString": "struct AttributeStore.Data storage ref" } }, - "id": 2824, + "id": 798, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "setAttribute", "nodeType": "MemberAccess", - "referencedDeclaration": 2164, - "src": "5831:18:5", + "referencedDeclaration": 63, + "src": "5575:18:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$2113_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$2113_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$6_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$6_storage_ptr_$", "typeString": "function (struct AttributeStore.Data storage pointer,bytes32,string memory,uint256)" } }, - "id": 2830, + "id": 804, "isConstant": false, "isLValue": false, "isPure": false, @@ -19475,20 +19629,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5831:57:5", + "src": "5575:57:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2831, + "id": 805, "nodeType": "ExpressionStatement", - "src": "5831:57:5" + "src": "5575:57:4" }, { "expression": { "argumentTypes": null, - "id": 2840, + "id": 814, "isConstant": false, "isLValue": false, "isPure": false, @@ -19501,26 +19655,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2832, + "id": 806, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "5899:7:5", + "referencedDeclaration": 535, + "src": "5639:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2834, + "id": 808, "indexExpression": { "argumentTypes": null, - "id": 2833, + "id": 807, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "5907:7:5", + "referencedDeclaration": 690, + "src": "5647:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19531,43 +19685,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5899:16:5", + "src": "5639:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2835, + "id": 809, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "didCommit", "nodeType": "MemberAccess", - "referencedDeclaration": 2547, - "src": "5899:26:5", + "referencedDeclaration": 521, + "src": "5639:26:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 2838, + "id": 812, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2836, + "id": 810, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5926:3:5", + "referencedDeclaration": 3702, + "src": "5666:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2837, + "id": 811, "isConstant": false, "isLValue": false, "isPure": false, @@ -19575,7 +19729,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5926:10:5", + "src": "5666:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19586,7 +19740,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5899:38:5", + "src": "5639:38:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19597,14 +19751,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 2839, + "id": 813, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5940:4:5", + "src": "5680:4:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -19612,28 +19766,28 @@ }, "value": "true" }, - "src": "5899:45:5", + "src": "5639:45:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 2841, + "id": 815, "nodeType": "ExpressionStatement", - "src": "5899:45:5" + "src": "5639:45:4" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2843, + "id": 817, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2716, - "src": "5969:7:5", + "referencedDeclaration": 690, + "src": "5710:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19641,12 +19795,12 @@ }, { "argumentTypes": null, - "id": 2844, + "id": 818, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2720, - "src": "5978:10:5", + "referencedDeclaration": 694, + "src": "5719:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19656,18 +19810,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2845, + "id": 819, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5990:3:5", + "referencedDeclaration": 3702, + "src": "5731:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2846, + "id": 820, "isConstant": false, "isLValue": false, "isPure": false, @@ -19675,7 +19829,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5990:10:5", + "src": "5731:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19697,18 +19851,18 @@ "typeString": "address" } ], - "id": 2842, + "id": 816, "name": "_VoteCommitted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2480, - "src": "5954:14:5", + "referencedDeclaration": 454, + "src": "5695:14:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,uint256,address)" } }, - "id": 2847, + "id": 821, "isConstant": false, "isLValue": false, "isPure": false, @@ -19716,20 +19870,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5954:47:5", + "src": "5695:47:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2848, - "nodeType": "ExpressionStatement", - "src": "5954:47:5" + "id": 822, + "nodeType": "EmitStatement", + "src": "5690:52:4" } ] }, "documentation": "@notice Commits vote using hash of choice and secret salt to conceal vote until reveal\n@param _pollID Integer identifier associated with target poll\n@param _secretHash Commit keccak256 hash of voter's choice and salt (tightly packed in this order)\n@param _numTokens The number of tokens to be committed towards the target poll\n@param _prevPollID The ID of the poll that the user has voted the maximum number of tokens in which is still less than or equal to numTokens", - "id": 2850, + "id": 824, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -19737,16 +19891,16 @@ "name": "commitVote", "nodeType": "FunctionDefinition", "parameters": { - "id": 2723, + "id": 697, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2716, + "id": 690, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 2850, - "src": "4834:12:5", + "scope": 824, + "src": "4559:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19754,10 +19908,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2715, + "id": 689, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4834:4:5", + "src": "4559:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19768,11 +19922,11 @@ }, { "constant": false, - "id": 2718, + "id": 692, "name": "_secretHash", "nodeType": "VariableDeclaration", - "scope": 2850, - "src": "4848:19:5", + "scope": 824, + "src": "4577:19:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19780,10 +19934,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2717, + "id": 691, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4848:7:5", + "src": "4577:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19794,11 +19948,11 @@ }, { "constant": false, - "id": 2720, + "id": 694, "name": "_numTokens", "nodeType": "VariableDeclaration", - "scope": 2850, - "src": "4869:15:5", + "scope": 824, + "src": "4602:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19806,10 +19960,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2719, + "id": 693, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4869:4:5", + "src": "4602:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19820,11 +19974,11 @@ }, { "constant": false, - "id": 2722, + "id": 696, "name": "_prevPollID", "nodeType": "VariableDeclaration", - "scope": 2850, - "src": "4886:16:5", + "scope": 824, + "src": "4623:16:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19832,10 +19986,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2721, + "id": 695, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4886:4:5", + "src": "4623:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19845,39 +19999,39 @@ "visibility": "internal" } ], - "src": "4833:70:5" + "src": "4553:90:4" }, "payable": false, "returnParameters": { - "id": 2724, + "id": 698, "nodeType": "ParameterList", "parameters": [], - "src": "4913:0:5" + "src": "4655:0:4" }, - "scope": 3488, - "src": "4814:1194:5", + "scope": 1471, + "src": "4534:1213:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 2891, + "id": 865, "nodeType": "Block", - "src": "6635:278:5", + "src": "6374:260:4", "statements": [ { "assignments": [ - 2864 + 838 ], "declarations": [ { "constant": false, - "id": 2864, + "id": 838, "name": "prevValid", "nodeType": "VariableDeclaration", - "scope": 2892, - "src": "6645:14:5", + "scope": 866, + "src": "6380:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19885,10 +20039,10 @@ "typeString": "bool" }, "typeName": { - "id": 2863, + "id": 837, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6645:4:5", + "src": "6380:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19898,7 +20052,7 @@ "visibility": "internal" } ], - "id": 2872, + "id": 846, "initialValue": { "argumentTypes": null, "components": [ @@ -19908,19 +20062,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2870, + "id": 844, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2865, + "id": 839, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2858, - "src": "6663:10:5", + "referencedDeclaration": 832, + "src": "6398:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19933,12 +20087,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2867, + "id": 841, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2856, - "src": "6690:6:5", + "referencedDeclaration": 830, + "src": "6425:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19946,12 +20100,12 @@ }, { "argumentTypes": null, - "id": 2868, + "id": 842, "name": "_prevID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2852, - "src": "6698:7:5", + "referencedDeclaration": 826, + "src": "6433:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19969,18 +20123,18 @@ "typeString": "uint256" } ], - "id": 2866, + "id": 840, "name": "getNumTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3359, - "src": "6677:12:5", + "referencedDeclaration": 1339, + "src": "6412:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, - "id": 2869, + "id": 843, "isConstant": false, "isLValue": false, "isPure": false, @@ -19988,47 +20142,47 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6677:29:5", + "src": "6412:29:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6663:43:5", + "src": "6398:43:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2871, + "id": 845, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "6662:45:5", + "src": "6397:45:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "6645:62:5" + "src": "6380:62:4" }, { "assignments": [ - 2874 + 848 ], "declarations": [ { "constant": false, - "id": 2874, + "id": 848, "name": "nextValid", "nodeType": "VariableDeclaration", - "scope": 2892, - "src": "6789:14:5", + "scope": 866, + "src": "6516:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20036,10 +20190,10 @@ "typeString": "bool" }, "typeName": { - "id": 2873, + "id": 847, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6789:4:5", + "src": "6516:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20049,7 +20203,7 @@ "visibility": "internal" } ], - "id": 2886, + "id": 860, "initialValue": { "argumentTypes": null, "components": [ @@ -20059,7 +20213,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2884, + "id": 858, "isConstant": false, "isLValue": false, "isPure": false, @@ -20070,19 +20224,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2880, + "id": 854, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2875, + "id": 849, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2858, - "src": "6807:10:5", + "referencedDeclaration": 832, + "src": "6534:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20095,12 +20249,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2877, + "id": 851, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2856, - "src": "6834:6:5", + "referencedDeclaration": 830, + "src": "6561:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20108,12 +20262,12 @@ }, { "argumentTypes": null, - "id": 2878, + "id": 852, "name": "_nextID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2854, - "src": "6842:7:5", + "referencedDeclaration": 828, + "src": "6569:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20131,18 +20285,18 @@ "typeString": "uint256" } ], - "id": 2876, + "id": 850, "name": "getNumTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3359, - "src": "6821:12:5", + "referencedDeclaration": 1339, + "src": "6548:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, - "id": 2879, + "id": 853, "isConstant": false, "isLValue": false, "isPure": false, @@ -20150,13 +20304,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6821:29:5", + "src": "6548:29:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6807:43:5", + "src": "6534:43:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20170,19 +20324,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2883, + "id": 857, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2881, + "id": 855, "name": "_nextID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2854, - "src": "6854:7:5", + "referencedDeclaration": 828, + "src": "6581:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20193,14 +20347,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2882, + "id": 856, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6865:1:5", + "src": "6592:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -20208,34 +20362,34 @@ }, "value": "0" }, - "src": "6854:12:5", + "src": "6581:12:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6807:59:5", + "src": "6534:59:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 2885, + "id": 859, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "6806:61:5", + "src": "6533:61:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "nodeType": "VariableDeclarationStatement", - "src": "6789:78:5" + "src": "6516:78:4" }, { "expression": { @@ -20244,19 +20398,19 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 2889, + "id": 863, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2887, + "id": 861, "name": "prevValid", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2864, - "src": "6884:9:5", + "referencedDeclaration": 838, + "src": "6607:9:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20266,32 +20420,32 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 2888, + "id": 862, "name": "nextValid", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2874, - "src": "6897:9:5", + "referencedDeclaration": 848, + "src": "6620:9:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6884:22:5", + "src": "6607:22:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 2862, - "id": 2890, + "functionReturnParameters": 836, + "id": 864, "nodeType": "Return", - "src": "6877:29:5" + "src": "6600:29:4" } ] }, "documentation": "@dev Compares previous and next poll's committed tokens for sorting purposes\n@param _prevID Integer identifier associated with previous poll in sorted order\n@param _nextID Integer identifier associated with next poll in sorted order\n@param _voter Address of user to check DLL position for\n@param _numTokens The number of tokens to be committed towards the poll (used for sorting)\n@return valid Boolean indication of if the specified position maintains the sort", - "id": 2892, + "id": 866, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -20299,16 +20453,16 @@ "name": "validPosition", "nodeType": "FunctionDefinition", "parameters": { - "id": 2859, + "id": 833, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2852, + "id": 826, "name": "_prevID", "nodeType": "VariableDeclaration", - "scope": 2892, - "src": "6537:12:5", + "scope": 866, + "src": "6263:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20316,10 +20470,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2851, + "id": 825, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6537:4:5", + "src": "6263:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20330,11 +20484,11 @@ }, { "constant": false, - "id": 2854, + "id": 828, "name": "_nextID", "nodeType": "VariableDeclaration", - "scope": 2892, - "src": "6551:12:5", + "scope": 866, + "src": "6281:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20342,10 +20496,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2853, + "id": 827, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6551:4:5", + "src": "6281:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20356,11 +20510,11 @@ }, { "constant": false, - "id": 2856, + "id": 830, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 2892, - "src": "6565:14:5", + "scope": 866, + "src": "6299:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20368,10 +20522,10 @@ "typeString": "address" }, "typeName": { - "id": 2855, + "id": 829, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6565:7:5", + "src": "6299:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20382,11 +20536,11 @@ }, { "constant": false, - "id": 2858, + "id": 832, "name": "_numTokens", "nodeType": "VariableDeclaration", - "scope": 2892, - "src": "6581:15:5", + "scope": 866, + "src": "6319:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20394,10 +20548,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2857, + "id": 831, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6581:4:5", + "src": "6319:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20407,20 +20561,20 @@ "visibility": "internal" } ], - "src": "6536:61:5" + "src": "6257:81:4" }, "payable": false, "returnParameters": { - "id": 2862, + "id": 836, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2861, + "id": 835, "name": "valid", "nodeType": "VariableDeclaration", - "scope": 2892, - "src": "6623:10:5", + "scope": 866, + "src": "6360:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20428,10 +20582,10 @@ "typeString": "bool" }, "typeName": { - "id": 2860, + "id": 834, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6623:4:5", + "src": "6360:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20441,19 +20595,19 @@ "visibility": "internal" } ], - "src": "6622:12:5" + "src": "6359:12:4" }, - "scope": 3488, - "src": "6514:399:5", + "scope": 1471, + "src": "6235:399:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3003, + "id": 980, "nodeType": "Block", - "src": "7348:1065:5", + "src": "7055:1062:4", "statements": [ { "expression": { @@ -20464,12 +20618,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2903, + "id": 877, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "7434:7:5", + "referencedDeclaration": 868, + "src": "7133:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20483,18 +20637,18 @@ "typeString": "uint256" } ], - "id": 2902, + "id": 876, "name": "revealPeriodActive", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3256, - "src": "7415:18:5", + "referencedDeclaration": 1236, + "src": "7114:18:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 2904, + "id": 878, "isConstant": false, "isLValue": false, "isPure": false, @@ -20502,7 +20656,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7415:27:5", + "src": "7114:27:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20516,21 +20670,21 @@ "typeString": "bool" } ], - "id": 2901, + "id": 875, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "7407:7:5", + "referencedDeclaration": 3705, + "src": "7106:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2905, + "id": 879, "isConstant": false, "isLValue": false, "isPure": false, @@ -20538,15 +20692,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7407:36:5", + "src": "7106:36:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2906, + "id": 880, "nodeType": "ExpressionStatement", - "src": "7407:36:5" + "src": "7106:36:4" }, { "expression": { @@ -20560,26 +20714,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2908, + "id": 882, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "7461:7:5", + "referencedDeclaration": 535, + "src": "7156:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2910, + "id": 884, "indexExpression": { "argumentTypes": null, - "id": 2909, + "id": 883, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "7469:7:5", + "referencedDeclaration": 868, + "src": "7164:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20590,43 +20744,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7461:16:5", + "src": "7156:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2911, + "id": 885, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "didCommit", "nodeType": "MemberAccess", - "referencedDeclaration": 2547, - "src": "7461:26:5", + "referencedDeclaration": 521, + "src": "7156:26:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 2914, + "id": 888, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2912, + "id": 886, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "7488:3:5", + "referencedDeclaration": 3702, + "src": "7183:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2913, + "id": 887, "isConstant": false, "isLValue": false, "isPure": false, @@ -20634,7 +20788,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7488:10:5", + "src": "7183:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20645,7 +20799,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7461:38:5", + "src": "7156:38:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20659,21 +20813,21 @@ "typeString": "bool" } ], - "id": 2907, + "id": 881, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "7453:7:5", + "referencedDeclaration": 3705, + "src": "7148:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2915, + "id": 889, "isConstant": false, "isLValue": false, "isPure": false, @@ -20681,15 +20835,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7453:47:5", + "src": "7148:47:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2916, + "id": 890, "nodeType": "ExpressionStatement", - "src": "7453:47:5" + "src": "7148:47:4" }, { "expression": { @@ -20697,7 +20851,7 @@ "arguments": [ { "argumentTypes": null, - "id": 2925, + "id": 899, "isConstant": false, "isLValue": false, "isPure": false, @@ -20705,7 +20859,7 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "7595:39:5", + "src": "7286:39:4", "subExpression": { "argumentTypes": null, "baseExpression": { @@ -20714,26 +20868,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2918, + "id": 892, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "7596:7:5", + "referencedDeclaration": 535, + "src": "7287:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2920, + "id": 894, "indexExpression": { "argumentTypes": null, - "id": 2919, + "id": 893, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "7604:7:5", + "referencedDeclaration": 868, + "src": "7295:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20744,43 +20898,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7596:16:5", + "src": "7287:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2921, + "id": 895, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "didReveal", "nodeType": "MemberAccess", - "referencedDeclaration": 2551, - "src": "7596:26:5", + "referencedDeclaration": 525, + "src": "7287:26:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 2924, + "id": 898, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2922, + "id": 896, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "7623:3:5", + "referencedDeclaration": 3702, + "src": "7314:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2923, + "id": 897, "isConstant": false, "isLValue": false, "isPure": false, @@ -20788,7 +20942,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7623:10:5", + "src": "7314:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20799,7 +20953,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7596:38:5", + "src": "7287:38:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20818,21 +20972,21 @@ "typeString": "bool" } ], - "id": 2917, + "id": 891, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "7587:7:5", + "referencedDeclaration": 3705, + "src": "7278:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2926, + "id": 900, "isConstant": false, "isLValue": false, "isPure": false, @@ -20840,15 +20994,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7587:48:5", + "src": "7278:48:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2927, + "id": 901, "nodeType": "ExpressionStatement", - "src": "7587:48:5" + "src": "7278:48:4" }, { "expression": { @@ -20860,7 +21014,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 2938, + "id": 915, "isConstant": false, "isLValue": false, "isPure": false, @@ -20870,54 +21024,106 @@ "arguments": [ { "argumentTypes": null, - "id": 2930, - "name": "_voteOption", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2896, - "src": "7732:11:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 2931, - "name": "_salt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 2898, - "src": "7745:5:5", + "arguments": [ + { + "argumentTypes": null, + "id": 906, + "name": "_voteOption", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 870, + "src": "7436:11:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 907, + "name": "_salt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 872, + "src": "7449:5:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 904, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "7419:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 905, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "7419:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 908, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "7419:36:4", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 2929, + "id": 903, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "7722:9:5", + "referencedDeclaration": 3696, + "src": "7409:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 2932, + "id": 909, "isConstant": false, "isLValue": false, "isPure": false, @@ -20925,7 +21131,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7722:29:5", + "src": "7409:47:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -20940,18 +21146,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2934, + "id": 911, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "7769:3:5", + "referencedDeclaration": 3702, + "src": "7474:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2935, + "id": 912, "isConstant": false, "isLValue": false, "isPure": false, @@ -20959,7 +21165,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7769:10:5", + "src": "7474:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20967,12 +21173,12 @@ }, { "argumentTypes": null, - "id": 2936, + "id": 913, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "7781:7:5", + "referencedDeclaration": 868, + "src": "7486:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20990,18 +21196,18 @@ "typeString": "uint256" } ], - "id": 2933, + "id": 910, "name": "getCommitHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3340, - "src": "7755:13:5", + "referencedDeclaration": 1320, + "src": "7460:13:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_bytes32_$", "typeString": "function (address,uint256) view returns (bytes32)" } }, - "id": 2937, + "id": 914, "isConstant": false, "isLValue": false, "isPure": false, @@ -21009,13 +21215,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7755:34:5", + "src": "7460:34:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "7722:67:5", + "src": "7409:85:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21029,21 +21235,21 @@ "typeString": "bool" } ], - "id": 2928, + "id": 902, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "7714:7:5", + "referencedDeclaration": 3705, + "src": "7401:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2939, + "id": 916, "isConstant": false, "isLValue": false, "isPure": false, @@ -21051,28 +21257,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7714:76:5", + "src": "7401:94:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2940, + "id": 917, "nodeType": "ExpressionStatement", - "src": "7714:76:5" + "src": "7401:94:4" }, { "assignments": [ - 2942 + 919 ], "declarations": [ { "constant": false, - "id": 2942, + "id": 919, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 3004, - "src": "7862:14:5", + "scope": 981, + "src": "7563:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21080,10 +21286,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2941, + "id": 918, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7862:4:5", + "src": "7563:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21093,7 +21299,7 @@ "visibility": "internal" } ], - "id": 2948, + "id": 925, "initialValue": { "argumentTypes": null, "arguments": [ @@ -21101,18 +21307,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2944, + "id": 921, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "7892:3:5", + "referencedDeclaration": 3702, + "src": "7593:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2945, + "id": 922, "isConstant": false, "isLValue": false, "isPure": false, @@ -21120,7 +21326,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7892:10:5", + "src": "7593:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21128,12 +21334,12 @@ }, { "argumentTypes": null, - "id": 2946, + "id": 923, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "7904:7:5", + "referencedDeclaration": 868, + "src": "7605:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21151,18 +21357,18 @@ "typeString": "uint256" } ], - "id": 2943, + "id": 920, "name": "getNumTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3359, - "src": "7879:12:5", + "referencedDeclaration": 1339, + "src": "7580:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, - "id": 2947, + "id": 924, "isConstant": false, "isLValue": false, "isPure": false, @@ -21170,14 +21376,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7879:33:5", + "src": "7580:33:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "7862:50:5" + "src": "7563:50:4" }, { "condition": { @@ -21186,19 +21392,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2951, + "id": 928, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2949, + "id": 926, "name": "_voteOption", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2896, - "src": "7927:11:5", + "referencedDeclaration": 870, + "src": "7624:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21209,14 +21415,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "31", - "id": 2950, + "id": 927, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7942:1:5", + "src": "7639:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -21224,21 +21430,21 @@ }, "value": "1" }, - "src": "7927:16:5", + "src": "7624:16:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 2967, + "id": 944, "nodeType": "Block", - "src": "8059:67:5", + "src": "7746:57:4", "statements": [ { "expression": { "argumentTypes": null, - "id": 2965, + "id": 942, "isConstant": false, "isLValue": false, "isPure": false, @@ -21249,26 +21455,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2960, + "id": 937, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "8073:7:5", + "referencedDeclaration": 535, + "src": "7754:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2962, + "id": 939, "indexExpression": { "argumentTypes": null, - "id": 2961, + "id": 938, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "8081:7:5", + "referencedDeclaration": 868, + "src": "7762:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21279,21 +21485,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8073:16:5", + "src": "7754:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2963, + "id": 940, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "votesAgainst", "nodeType": "MemberAccess", - "referencedDeclaration": 2543, - "src": "8073:29:5", + "referencedDeclaration": 517, + "src": "7754:29:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21303,41 +21509,41 @@ "operator": "+=", "rightHandSide": { "argumentTypes": null, - "id": 2964, + "id": 941, "name": "numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2942, - "src": "8106:9:5", + "referencedDeclaration": 919, + "src": "7787:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8073:42:5", + "src": "7754:42:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2966, + "id": 943, "nodeType": "ExpressionStatement", - "src": "8073:42:5" + "src": "7754:42:4" } ] }, - "id": 2968, + "id": 945, "nodeType": "IfStatement", - "src": "7923:203:5", + "src": "7620:183:4", "trueBody": { - "id": 2959, + "id": 936, "nodeType": "Block", - "src": "7945:108:5", + "src": "7642:98:4", "statements": [ { "expression": { "argumentTypes": null, - "id": 2957, + "id": 934, "isConstant": false, "isLValue": false, "isPure": false, @@ -21348,26 +21554,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2952, + "id": 929, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "8004:7:5", + "referencedDeclaration": 535, + "src": "7695:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2954, + "id": 931, "indexExpression": { "argumentTypes": null, - "id": 2953, + "id": 930, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "8012:7:5", + "referencedDeclaration": 868, + "src": "7703:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21378,21 +21584,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8004:16:5", + "src": "7695:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2955, + "id": 932, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "votesFor", "nodeType": "MemberAccess", - "referencedDeclaration": 2541, - "src": "8004:25:5", + "referencedDeclaration": 515, + "src": "7695:25:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21402,26 +21608,26 @@ "operator": "+=", "rightHandSide": { "argumentTypes": null, - "id": 2956, + "id": 933, "name": "numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2942, - "src": "8033:9:5", + "referencedDeclaration": 919, + "src": "7724:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8004:38:5", + "src": "7695:38:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 2958, + "id": 935, "nodeType": "ExpressionStatement", - "src": "8004:38:5" + "src": "7695:38:4" } ] } @@ -21432,12 +21638,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2974, + "id": 951, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "8162:7:5", + "referencedDeclaration": 868, + "src": "7835:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21455,34 +21661,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2969, + "id": 946, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "8136:6:5", + "referencedDeclaration": 543, + "src": "7809:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 2972, + "id": 949, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2970, + "id": 947, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "8143:3:5", + "referencedDeclaration": 3702, + "src": "7816:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2971, + "id": 948, "isConstant": false, "isLValue": false, "isPure": false, @@ -21490,7 +21696,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "8143:10:5", + "src": "7816:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21501,27 +21707,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8136:18:5", + "src": "7809:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 2973, + "id": 950, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "remove", "nodeType": "MemberAccess", - "referencedDeclaration": 2465, - "src": "8136:25:5", + "referencedDeclaration": 364, + "src": "7809:25:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$__$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256)" } }, - "id": 2975, + "id": 952, "isConstant": false, "isLValue": false, "isPure": false, @@ -21529,20 +21735,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8136:34:5", + "src": "7809:34:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2976, + "id": 953, "nodeType": "ExpressionStatement", - "src": "8136:34:5" + "src": "7809:34:4" }, { "expression": { "argumentTypes": null, - "id": 2985, + "id": 962, "isConstant": false, "isLValue": false, "isPure": false, @@ -21555,26 +21761,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2977, + "id": 954, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "8234:7:5", + "referencedDeclaration": 535, + "src": "7903:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2979, + "id": 956, "indexExpression": { "argumentTypes": null, - "id": 2978, + "id": 955, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "8242:7:5", + "referencedDeclaration": 868, + "src": "7911:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21585,43 +21791,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8234:16:5", + "src": "7903:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2980, + "id": 957, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "didReveal", "nodeType": "MemberAccess", - "referencedDeclaration": 2551, - "src": "8234:26:5", + "referencedDeclaration": 525, + "src": "7903:26:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 2983, + "id": 960, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2981, + "id": 958, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "8261:3:5", + "referencedDeclaration": 3702, + "src": "7930:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 2982, + "id": 959, "isConstant": false, "isLValue": false, "isPure": false, @@ -21629,7 +21835,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "8261:10:5", + "src": "7930:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21640,7 +21846,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "8234:38:5", + "src": "7903:38:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21651,14 +21857,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 2984, + "id": 961, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "8275:4:5", + "src": "7944:4:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -21666,28 +21872,28 @@ }, "value": "true" }, - "src": "8234:45:5", + "src": "7903:45:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 2986, + "id": 963, "nodeType": "ExpressionStatement", - "src": "8234:45:5" + "src": "7903:45:4" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2988, + "id": 965, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "8304:7:5", + "referencedDeclaration": 868, + "src": "7981:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21695,12 +21901,12 @@ }, { "argumentTypes": null, - "id": 2989, + "id": 966, "name": "numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2942, - "src": "8313:9:5", + "referencedDeclaration": 919, + "src": "7996:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21712,26 +21918,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2990, + "id": 967, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "8324:7:5", + "referencedDeclaration": 535, + "src": "8013:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2992, + "id": 969, "indexExpression": { "argumentTypes": null, - "id": 2991, + "id": 968, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "8332:7:5", + "referencedDeclaration": 868, + "src": "8021:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21742,21 +21948,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8324:16:5", + "src": "8013:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2993, + "id": 970, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "votesFor", "nodeType": "MemberAccess", - "referencedDeclaration": 2541, - "src": "8324:25:5", + "referencedDeclaration": 515, + "src": "8013:25:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21768,26 +21974,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2994, + "id": 971, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "8351:7:5", + "referencedDeclaration": 535, + "src": "8046:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 2996, + "id": 973, "indexExpression": { "argumentTypes": null, - "id": 2995, + "id": 972, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2894, - "src": "8359:7:5", + "referencedDeclaration": 868, + "src": "8054:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21798,21 +22004,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8351:16:5", + "src": "8046:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 2997, + "id": 974, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "votesAgainst", "nodeType": "MemberAccess", - "referencedDeclaration": 2543, - "src": "8351:29:5", + "referencedDeclaration": 517, + "src": "8046:29:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21820,12 +22026,12 @@ }, { "argumentTypes": null, - "id": 2998, + "id": 975, "name": "_voteOption", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2896, - "src": "8382:11:5", + "referencedDeclaration": 870, + "src": "8083:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21835,18 +22041,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2999, + "id": 976, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "8395:3:5", + "referencedDeclaration": 3702, + "src": "8096:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3000, + "id": 977, "isConstant": false, "isLValue": false, "isPure": false, @@ -21854,7 +22060,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "8395:10:5", + "src": "8096:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21888,18 +22094,18 @@ "typeString": "address" } ], - "id": 2987, + "id": 964, "name": "_VoteRevealed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2494, - "src": "8290:13:5", + "referencedDeclaration": 468, + "src": "7960:13:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,uint256,uint256,uint256,uint256,address)" } }, - "id": 3001, + "id": 978, "isConstant": false, "isLValue": false, "isPure": false, @@ -21907,20 +22113,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8290:116:5", + "src": "7960:152:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3002, - "nodeType": "ExpressionStatement", - "src": "8290:116:5" + "id": 979, + "nodeType": "EmitStatement", + "src": "7955:157:4" } ] }, "documentation": "@notice Reveals vote with choice and secret salt used in generating commitHash to attribute committed tokens\n@param _pollID Integer identifier associated with target poll\n@param _voteOption Vote choice used to generate commitHash for associated poll\n@param _salt Secret number used to generate commitHash for associated poll", - "id": 3004, + "id": 981, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -21928,16 +22134,16 @@ "name": "revealVote", "nodeType": "FunctionDefinition", "parameters": { - "id": 2899, + "id": 873, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2894, + "id": 868, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3004, - "src": "7295:12:5", + "scope": 981, + "src": "7002:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21945,10 +22151,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2893, + "id": 867, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7295:4:5", + "src": "7002:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21959,11 +22165,11 @@ }, { "constant": false, - "id": 2896, + "id": 870, "name": "_voteOption", "nodeType": "VariableDeclaration", - "scope": 3004, - "src": "7309:16:5", + "scope": 981, + "src": "7016:16:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21971,10 +22177,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2895, + "id": 869, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7309:4:5", + "src": "7016:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21985,11 +22191,11 @@ }, { "constant": false, - "id": 2898, + "id": 872, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 3004, - "src": "7327:10:5", + "scope": 981, + "src": "7034:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21997,10 +22203,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2897, + "id": 871, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7327:4:5", + "src": "7034:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22010,26 +22216,26 @@ "visibility": "internal" } ], - "src": "7294:44:5" + "src": "7001:44:4" }, "payable": false, "returnParameters": { - "id": 2900, + "id": 874, "nodeType": "ParameterList", "parameters": [], - "src": "7348:0:5" + "src": "7055:0:4" }, - "scope": 3488, - "src": "7275:1138:5", + "scope": 1471, + "src": "6982:1135:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 3064, + "id": 1044, "nodeType": "Block", - "src": "8754:368:5", + "src": "8442:356:4", "statements": [ { "expression": { @@ -22040,12 +22246,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3017, + "id": 994, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3008, - "src": "8782:7:5", + "referencedDeclaration": 985, + "src": "8466:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22059,18 +22265,18 @@ "typeString": "uint256" } ], - "id": 3016, + "id": 993, "name": "pollEnded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3207, - "src": "8772:9:5", + "referencedDeclaration": 1187, + "src": "8456:9:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3018, + "id": 995, "isConstant": false, "isLValue": false, "isPure": false, @@ -22078,7 +22284,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8772:18:5", + "src": "8456:18:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22092,21 +22298,21 @@ "typeString": "bool" } ], - "id": 3015, + "id": 992, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "8764:7:5", + "referencedDeclaration": 3705, + "src": "8448:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3019, + "id": 996, "isConstant": false, "isLValue": false, "isPure": false, @@ -22114,15 +22320,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8764:27:5", + "src": "8448:27:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3020, + "id": 997, "nodeType": "ExpressionStatement", - "src": "8764:27:5" + "src": "8448:27:4" }, { "expression": { @@ -22136,26 +22342,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3022, + "id": 999, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "8809:7:5", + "referencedDeclaration": 535, + "src": "8489:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3024, + "id": 1001, "indexExpression": { "argumentTypes": null, - "id": 3023, + "id": 1000, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3008, - "src": "8817:7:5", + "referencedDeclaration": 985, + "src": "8497:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22166,35 +22372,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8809:16:5", + "src": "8489:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3025, + "id": 1002, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "didReveal", "nodeType": "MemberAccess", - "referencedDeclaration": 2551, - "src": "8809:26:5", + "referencedDeclaration": 525, + "src": "8489:26:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 3027, + "id": 1004, "indexExpression": { "argumentTypes": null, - "id": 3026, + "id": 1003, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3006, - "src": "8836:6:5", + "referencedDeclaration": 983, + "src": "8516:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22205,7 +22411,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8809:34:5", + "src": "8489:34:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22219,21 +22425,21 @@ "typeString": "bool" } ], - "id": 3021, + "id": 998, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "8801:7:5", + "referencedDeclaration": 3705, + "src": "8481:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3028, + "id": 1005, "isConstant": false, "isLValue": false, "isPure": false, @@ -22241,28 +22447,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8801:43:5", + "src": "8481:43:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3029, + "id": 1006, "nodeType": "ExpressionStatement", - "src": "8801:43:5" + "src": "8481:43:4" }, { "assignments": [ - 3031 + 1008 ], "declarations": [ { "constant": false, - "id": 3031, + "id": 1008, "name": "winningChoice", "nodeType": "VariableDeclaration", - "scope": 3065, - "src": "8855:18:5", + "scope": 1045, + "src": "8531:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22270,10 +22476,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3030, + "id": 1007, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8855:4:5", + "src": "8531:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22283,7 +22489,7 @@ "visibility": "internal" } ], - "id": 3038, + "id": 1015, "initialValue": { "argumentTypes": null, "condition": { @@ -22291,12 +22497,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3033, + "id": 1010, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3008, - "src": "8885:7:5", + "referencedDeclaration": 985, + "src": "8561:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22310,18 +22516,18 @@ "typeString": "uint256" } ], - "id": 3032, + "id": 1009, "name": "isPassed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3158, - "src": "8876:8:5", + "referencedDeclaration": 1138, + "src": "8552:8:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3034, + "id": 1011, "isConstant": false, "isLValue": false, "isPure": false, @@ -22329,7 +22535,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8876:17:5", + "src": "8552:17:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22338,14 +22544,14 @@ "falseExpression": { "argumentTypes": null, "hexValue": "30", - "id": 3036, + "id": 1013, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8900:1:5", + "src": "8576:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -22353,24 +22559,24 @@ }, "value": "0" }, - "id": 3037, + "id": 1014, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "Conditional", - "src": "8876:25:5", + "src": "8552:25:4", "trueExpression": { "argumentTypes": null, "hexValue": "31", - "id": 3035, + "id": 1012, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8896:1:5", + "src": "8572:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -22384,20 +22590,20 @@ } }, "nodeType": "VariableDeclarationStatement", - "src": "8855:46:5" + "src": "8531:46:4" }, { "assignments": [ - 3040 + 1017 ], "declarations": [ { "constant": false, - "id": 3040, + "id": 1017, "name": "winnerHash", "nodeType": "VariableDeclaration", - "scope": 3065, - "src": "8911:18:5", + "scope": 1045, + "src": "8583:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22405,10 +22611,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3039, + "id": 1016, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "8911:7:5", + "src": "8583:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22418,60 +22624,112 @@ "visibility": "internal" } ], - "id": 3045, + "id": 1025, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3042, - "name": "winningChoice", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3031, - "src": "8942:13:5", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - { - "argumentTypes": null, - "id": 3043, - "name": "_salt", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3010, - "src": "8957:5:5", + "arguments": [ + { + "argumentTypes": null, + "id": 1021, + "name": "winningChoice", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1008, + "src": "8631:13:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "argumentTypes": null, + "id": 1022, + "name": "_salt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 987, + "src": "8646:5:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1019, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "8614:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1020, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "8614:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1023, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "8614:38:4", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 3041, + "id": 1018, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "8932:9:5", + "referencedDeclaration": 3696, + "src": "8604:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 3044, + "id": 1024, "isConstant": false, "isLValue": false, "isPure": false, @@ -22479,27 +22737,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8932:31:5", + "src": "8604:49:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "8911:52:5" + "src": "8583:70:4" }, { "assignments": [ - 3047 + 1027 ], "declarations": [ { "constant": false, - "id": 3047, + "id": 1027, "name": "commitHash", "nodeType": "VariableDeclaration", - "scope": 3065, - "src": "8973:18:5", + "scope": 1045, + "src": "8659:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22507,10 +22765,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3046, + "id": 1026, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "8973:7:5", + "src": "8659:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22520,18 +22778,18 @@ "visibility": "internal" } ], - "id": 3052, + "id": 1032, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3049, + "id": 1029, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3006, - "src": "9008:6:5", + "referencedDeclaration": 983, + "src": "8694:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22539,12 +22797,12 @@ }, { "argumentTypes": null, - "id": 3050, + "id": 1030, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3008, - "src": "9016:7:5", + "referencedDeclaration": 985, + "src": "8702:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22562,18 +22820,18 @@ "typeString": "uint256" } ], - "id": 3048, + "id": 1028, "name": "getCommitHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3340, - "src": "8994:13:5", + "referencedDeclaration": 1320, + "src": "8680:13:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_bytes32_$", "typeString": "function (address,uint256) view returns (bytes32)" } }, - "id": 3051, + "id": 1031, "isConstant": false, "isLValue": false, "isPure": false, @@ -22581,14 +22839,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8994:30:5", + "src": "8680:30:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "8973:51:5" + "src": "8659:51:4" }, { "expression": { @@ -22600,19 +22858,19 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 3056, + "id": 1036, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3054, + "id": 1034, "name": "winnerHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3040, - "src": "9043:10:5", + "referencedDeclaration": 1017, + "src": "8725:10:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22622,18 +22880,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 3055, + "id": 1035, "name": "commitHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3047, - "src": "9057:10:5", + "referencedDeclaration": 1027, + "src": "8739:10:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "9043:24:5", + "src": "8725:24:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22647,21 +22905,21 @@ "typeString": "bool" } ], - "id": 3053, + "id": 1033, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "9035:7:5", + "referencedDeclaration": 3705, + "src": "8717:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3057, + "id": 1037, "isConstant": false, "isLValue": false, "isPure": false, @@ -22669,15 +22927,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9035:33:5", + "src": "8717:33:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3058, + "id": 1038, "nodeType": "ExpressionStatement", - "src": "9035:33:5" + "src": "8717:33:4" }, { "expression": { @@ -22685,12 +22943,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3060, + "id": 1040, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3006, - "src": "9099:6:5", + "referencedDeclaration": 983, + "src": "8777:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22698,12 +22956,12 @@ }, { "argumentTypes": null, - "id": 3061, + "id": 1041, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3008, - "src": "9107:7:5", + "referencedDeclaration": 985, + "src": "8785:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22721,18 +22979,18 @@ "typeString": "uint256" } ], - "id": 3059, + "id": 1039, "name": "getNumTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3359, - "src": "9086:12:5", + "referencedDeclaration": 1339, + "src": "8764:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, - "id": 3062, + "id": 1042, "isConstant": false, "isLValue": false, "isPure": false, @@ -22740,21 +22998,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9086:29:5", + "src": "8764:29:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3014, - "id": 3063, + "functionReturnParameters": 991, + "id": 1043, "nodeType": "Return", - "src": "9079:36:5" + "src": "8757:36:4" } ] }, "documentation": "@param _pollID Integer identifier associated with target poll\n@param _salt Arbitrarily chosen integer used to generate secretHash\n@return correctVotes Number of tokens voted for winning option", - "id": 3065, + "id": 1045, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -22762,16 +23020,16 @@ "name": "getNumPassingTokens", "nodeType": "FunctionDefinition", "parameters": { - "id": 3011, + "id": 988, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3006, + "id": 983, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3065, - "src": "8668:14:5", + "scope": 1045, + "src": "8360:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22779,10 +23037,10 @@ "typeString": "address" }, "typeName": { - "id": 3005, + "id": 982, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8668:7:5", + "src": "8360:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22793,11 +23051,11 @@ }, { "constant": false, - "id": 3008, + "id": 985, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3065, - "src": "8684:12:5", + "scope": 1045, + "src": "8376:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22805,10 +23063,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3007, + "id": 984, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8684:4:5", + "src": "8376:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22819,11 +23077,11 @@ }, { "constant": false, - "id": 3010, + "id": 987, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 3065, - "src": "8698:10:5", + "scope": 1045, + "src": "8390:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22831,10 +23089,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3009, + "id": 986, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8698:4:5", + "src": "8390:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22844,20 +23102,20 @@ "visibility": "internal" } ], - "src": "8667:42:5" + "src": "8359:42:4" }, "payable": false, "returnParameters": { - "id": 3014, + "id": 991, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3013, + "id": 990, "name": "correctVotes", "nodeType": "VariableDeclaration", - "scope": 3065, - "src": "8735:17:5", + "scope": 1045, + "src": "8423:17:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22865,10 +23123,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3012, + "id": 989, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8735:4:5", + "src": "8423:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22878,36 +23136,36 @@ "visibility": "internal" } ], - "src": "8734:19:5" + "src": "8422:19:4" }, - "scope": 3488, - "src": "8639:483:5", + "scope": 1471, + "src": "8331:467:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3120, + "id": 1100, "nodeType": "Block", - "src": "9671:513:5", + "src": "9327:495:4", "statements": [ { "expression": { "argumentTypes": null, - "id": 3080, + "id": 1060, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 3076, + "id": 1056, "name": "pollNonce", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "9681:9:5", + "referencedDeclaration": 531, + "src": "9333:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22921,19 +23179,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3079, + "id": 1059, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3077, + "id": 1057, "name": "pollNonce", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "9693:9:5", + "referencedDeclaration": 531, + "src": "9345:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22944,14 +23202,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "31", - "id": 3078, + "id": 1058, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "9705:1:5", + "src": "9357:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -22959,34 +23217,34 @@ }, "value": "1" }, - "src": "9693:13:5", + "src": "9345:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9681:25:5", + "src": "9333:25:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3081, + "id": 1061, "nodeType": "ExpressionStatement", - "src": "9681:25:5" + "src": "9333:25:4" }, { "assignments": [ - 3083 + 1063 ], "declarations": [ { "constant": false, - "id": 3083, + "id": 1063, "name": "commitEndDate", "nodeType": "VariableDeclaration", - "scope": 3121, - "src": "9717:18:5", + "scope": 1101, + "src": "9365:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22994,10 +23252,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3082, + "id": 1062, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9717:4:5", + "src": "9365:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23007,18 +23265,18 @@ "visibility": "internal" } ], - "id": 3089, + "id": 1069, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3087, + "id": 1067, "name": "_commitDuration", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3069, - "src": "9758:15:5", + "referencedDeclaration": 1049, + "src": "9406:15:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23036,18 +23294,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3084, + "id": 1064, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3882, - "src": "9738:5:5", + "referencedDeclaration": 3692, + "src": "9386:5:4", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 3085, + "id": 1065, "isConstant": false, "isLValue": false, "isPure": false, @@ -23055,27 +23313,27 @@ "memberName": "timestamp", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9738:15:5", + "src": "9386:15:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3086, + "id": 1066, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "9738:19:5", + "referencedDeclaration": 3686, + "src": "9386:19:4", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 3088, + "id": 1068, "isConstant": false, "isLValue": false, "isPure": false, @@ -23083,27 +23341,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9738:36:5", + "src": "9386:36:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9717:57:5" + "src": "9365:57:4" }, { "assignments": [ - 3091 + 1071 ], "declarations": [ { "constant": false, - "id": 3091, + "id": 1071, "name": "revealEndDate", "nodeType": "VariableDeclaration", - "scope": 3121, - "src": "9784:18:5", + "scope": 1101, + "src": "9428:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23111,10 +23369,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3090, + "id": 1070, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9784:4:5", + "src": "9428:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23124,18 +23382,18 @@ "visibility": "internal" } ], - "id": 3096, + "id": 1076, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3094, + "id": 1074, "name": "_revealDuration", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3071, - "src": "9823:15:5", + "referencedDeclaration": 1051, + "src": "9467:15:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23151,32 +23409,32 @@ ], "expression": { "argumentTypes": null, - "id": 3092, + "id": 1072, "name": "commitEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3083, - "src": "9805:13:5", + "referencedDeclaration": 1063, + "src": "9449:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3093, + "id": 1073, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "9805:17:5", + "referencedDeclaration": 3686, + "src": "9449:17:4", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 3095, + "id": 1075, "isConstant": false, "isLValue": false, "isPure": false, @@ -23184,19 +23442,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9805:34:5", + "src": "9449:34:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9784:55:5" + "src": "9428:55:4" }, { "expression": { "argumentTypes": null, - "id": 3107, + "id": 1087, "isConstant": false, "isLValue": false, "isPure": false, @@ -23205,26 +23463,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3097, + "id": 1077, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "9850:7:5", + "referencedDeclaration": 535, + "src": "9490:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3099, + "id": 1079, "indexExpression": { "argumentTypes": null, - "id": 3098, + "id": 1078, "name": "pollNonce", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "9858:9:5", + "referencedDeclaration": 531, + "src": "9498:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23235,9 +23493,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "9850:18:5", + "src": "9490:18:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, @@ -23248,12 +23506,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3101, + "id": 1081, "name": "_voteQuorum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3067, - "src": "9902:11:5", + "referencedDeclaration": 1047, + "src": "9536:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23261,12 +23519,12 @@ }, { "argumentTypes": null, - "id": 3102, + "id": 1082, "name": "commitEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3083, - "src": "9942:13:5", + "referencedDeclaration": 1063, + "src": "9570:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23274,12 +23532,12 @@ }, { "argumentTypes": null, - "id": 3103, + "id": 1083, "name": "revealEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3091, - "src": "9984:13:5", + "referencedDeclaration": 1071, + "src": "9606:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23288,14 +23546,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 3104, + "id": 1084, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10021:1:5", + "src": "9637:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -23306,14 +23564,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 3105, + "id": 1085, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10050:1:5", + "src": "9660:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -23324,18 +23582,18 @@ ], "expression": { "argumentTypes": null, - "id": 3100, + "id": 1080, "name": "Poll", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2552, - "src": "9871:4:5", + "referencedDeclaration": 526, + "src": "9511:4:4", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Poll_$2552_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Poll_$526_storage_ptr_$", "typeString": "type(struct PLCRVoting.Poll storage pointer)" } }, - "id": 3106, + "id": 1086, "isConstant": false, "isLValue": false, "isPure": false, @@ -23349,34 +23607,34 @@ "votesAgainst" ], "nodeType": "FunctionCall", - "src": "9871:191:5", + "src": "9511:157:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_memory", + "typeIdentifier": "t_struct$_Poll_$526_memory", "typeString": "struct PLCRVoting.Poll memory" } }, - "src": "9850:212:5", + "src": "9490:178:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3108, + "id": 1088, "nodeType": "ExpressionStatement", - "src": "9850:212:5" + "src": "9490:178:4" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3110, + "id": 1090, "name": "_voteQuorum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3067, - "src": "10086:11:5", + "referencedDeclaration": 1047, + "src": "9700:11:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23384,12 +23642,12 @@ }, { "argumentTypes": null, - "id": 3111, + "id": 1091, "name": "commitEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3083, - "src": "10099:13:5", + "referencedDeclaration": 1063, + "src": "9719:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23397,12 +23655,12 @@ }, { "argumentTypes": null, - "id": 3112, + "id": 1092, "name": "revealEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3091, - "src": "10114:13:5", + "referencedDeclaration": 1071, + "src": "9740:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23410,12 +23668,12 @@ }, { "argumentTypes": null, - "id": 3113, + "id": 1093, "name": "pollNonce", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "10129:9:5", + "referencedDeclaration": 531, + "src": "9761:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23425,18 +23683,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3114, + "id": 1094, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "10140:3:5", + "referencedDeclaration": 3702, + "src": "9778:3:4", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 3115, + "id": 1095, "isConstant": false, "isLValue": false, "isPure": false, @@ -23444,7 +23702,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10140:10:5", + "src": "9778:10:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23474,18 +23732,18 @@ "typeString": "address" } ], - "id": 3109, + "id": 1089, "name": "_PollCreated", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2506, - "src": "10073:12:5", + "referencedDeclaration": 480, + "src": "9680:12:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,uint256,uint256,uint256,address)" } }, - "id": 3116, + "id": 1096, "isConstant": false, "isLValue": false, "isPure": false, @@ -23493,39 +23751,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10073:78:5", + "src": "9680:114:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3117, - "nodeType": "ExpressionStatement", - "src": "10073:78:5" + "id": 1097, + "nodeType": "EmitStatement", + "src": "9675:119:4" }, { "expression": { "argumentTypes": null, - "id": 3118, + "id": 1098, "name": "pollNonce", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "10168:9:5", + "referencedDeclaration": 531, + "src": "9808:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3075, - "id": 3119, + "functionReturnParameters": 1055, + "id": 1099, "nodeType": "Return", - "src": "10161:16:5" + "src": "9801:16:4" } ] }, "documentation": "@dev Initiates a poll with canonical configured parameters at pollID emitted by PollCreated event\n@param _voteQuorum Type of majority (out of 100) that is necessary for poll to be successful\n@param _commitDuration Length of desired commit period in seconds\n@param _revealDuration Length of desired reveal period in seconds", - "id": 3121, + "id": 1101, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -23533,16 +23791,16 @@ "name": "startPoll", "nodeType": "FunctionDefinition", "parameters": { - "id": 3072, + "id": 1052, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3067, + "id": 1047, "name": "_voteQuorum", "nodeType": "VariableDeclaration", - "scope": 3121, - "src": "9580:16:5", + "scope": 1101, + "src": "9236:16:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23550,10 +23808,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3066, + "id": 1046, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9580:4:5", + "src": "9236:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23564,11 +23822,11 @@ }, { "constant": false, - "id": 3069, + "id": 1049, "name": "_commitDuration", "nodeType": "VariableDeclaration", - "scope": 3121, - "src": "9598:20:5", + "scope": 1101, + "src": "9254:20:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23576,10 +23834,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3068, + "id": 1048, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9598:4:5", + "src": "9254:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23590,11 +23848,11 @@ }, { "constant": false, - "id": 3071, + "id": 1051, "name": "_revealDuration", "nodeType": "VariableDeclaration", - "scope": 3121, - "src": "9620:20:5", + "scope": 1101, + "src": "9276:20:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23602,10 +23860,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3070, + "id": 1050, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9620:4:5", + "src": "9276:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23615,20 +23873,20 @@ "visibility": "internal" } ], - "src": "9579:62:5" + "src": "9235:62:4" }, "payable": false, "returnParameters": { - "id": 3075, + "id": 1055, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3074, + "id": 1054, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 3121, - "src": "9658:11:5", + "scope": 1101, + "src": "9314:11:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23636,10 +23894,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3073, + "id": 1053, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9658:4:5", + "src": "9314:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23649,19 +23907,19 @@ "visibility": "internal" } ], - "src": "9657:13:5" + "src": "9313:13:4" }, - "scope": 3488, - "src": "9561:623:5", + "scope": 1471, + "src": "9217:605:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3157, + "id": 1137, "nodeType": "Block", - "src": "10473:186:5", + "src": "10095:172:4", "statements": [ { "expression": { @@ -23672,12 +23930,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3130, + "id": 1110, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3123, - "src": "10501:7:5", + "referencedDeclaration": 1103, + "src": "10119:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23691,18 +23949,18 @@ "typeString": "uint256" } ], - "id": 3129, + "id": 1109, "name": "pollEnded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3207, - "src": "10491:9:5", + "referencedDeclaration": 1187, + "src": "10109:9:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3131, + "id": 1111, "isConstant": false, "isLValue": false, "isPure": false, @@ -23710,7 +23968,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10491:18:5", + "src": "10109:18:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23724,21 +23982,21 @@ "typeString": "bool" } ], - "id": 3128, + "id": 1108, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "10483:7:5", + "referencedDeclaration": 3705, + "src": "10101:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3132, + "id": 1112, "isConstant": false, "isLValue": false, "isPure": false, @@ -23746,43 +24004,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10483:27:5", + "src": "10101:27:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3133, + "id": 1113, "nodeType": "ExpressionStatement", - "src": "10483:27:5" + "src": "10101:27:4" }, { "assignments": [ - 3135 + 1115 ], "declarations": [ { "constant": false, - "id": 3135, + "id": 1115, "name": "poll", "nodeType": "VariableDeclaration", - "scope": 3158, - "src": "10521:16:5", + "scope": 1138, + "src": "10135:16:4", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_memory_ptr", + "typeIdentifier": "t_struct$_Poll_$526_memory_ptr", "typeString": "struct PLCRVoting.Poll" }, "typeName": { "contractScope": null, - "id": 3134, + "id": 1114, "name": "Poll", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 2552, - "src": "10521:4:5", + "referencedDeclaration": 526, + "src": "10135:4:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage_ptr", + "typeIdentifier": "t_struct$_Poll_$526_storage_ptr", "typeString": "struct PLCRVoting.Poll" } }, @@ -23790,31 +24048,31 @@ "visibility": "internal" } ], - "id": 3139, + "id": 1119, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3136, + "id": 1116, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "10540:7:5", + "referencedDeclaration": 535, + "src": "10154:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3138, + "id": 1118, "indexExpression": { "argumentTypes": null, - "id": 3137, + "id": 1117, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3123, - "src": "10548:7:5", + "referencedDeclaration": 1103, + "src": "10162:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23825,14 +24083,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10540:16:5", + "src": "10154:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "10521:35:5" + "src": "10135:35:4" }, { "expression": { @@ -23841,7 +24099,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3155, + "id": 1135, "isConstant": false, "isLValue": false, "isPure": false, @@ -23855,7 +24113,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3143, + "id": 1123, "isConstant": false, "isLValue": false, "isPure": false, @@ -23863,14 +24121,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "313030", - "id": 3140, + "id": 1120, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "10574:3:5", + "src": "10184:3:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -23884,46 +24142,46 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3141, + "id": 1121, "name": "poll", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3135, - "src": "10580:4:5", + "referencedDeclaration": 1115, + "src": "10190:4:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_memory_ptr", + "typeIdentifier": "t_struct$_Poll_$526_memory_ptr", "typeString": "struct PLCRVoting.Poll memory" } }, - "id": 3142, + "id": 1122, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "votesFor", "nodeType": "MemberAccess", - "referencedDeclaration": 2541, - "src": "10580:13:5", + "referencedDeclaration": 515, + "src": "10190:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10574:19:5", + "src": "10184:19:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 3144, + "id": 1124, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "10573:21:5", + "src": "10183:21:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23940,7 +24198,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3153, + "id": 1133, "isConstant": false, "isLValue": false, "isPure": false, @@ -23949,26 +24207,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3145, + "id": 1125, "name": "poll", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3135, - "src": "10598:4:5", + "referencedDeclaration": 1115, + "src": "10208:4:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_memory_ptr", + "typeIdentifier": "t_struct$_Poll_$526_memory_ptr", "typeString": "struct PLCRVoting.Poll memory" } }, - "id": 3146, + "id": 1126, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "voteQuorum", "nodeType": "MemberAccess", - "referencedDeclaration": 2539, - "src": "10598:15:5", + "referencedDeclaration": 513, + "src": "10208:15:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23985,7 +24243,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3151, + "id": 1131, "isConstant": false, "isLValue": false, "isPure": false, @@ -23994,26 +24252,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3147, + "id": 1127, "name": "poll", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3135, - "src": "10617:4:5", + "referencedDeclaration": 1115, + "src": "10227:4:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_memory_ptr", + "typeIdentifier": "t_struct$_Poll_$526_memory_ptr", "typeString": "struct PLCRVoting.Poll memory" } }, - "id": 3148, + "id": 1128, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "votesFor", "nodeType": "MemberAccess", - "referencedDeclaration": 2541, - "src": "10617:13:5", + "referencedDeclaration": 515, + "src": "10227:13:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24025,86 +24283,86 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3149, + "id": 1129, "name": "poll", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3135, - "src": "10633:4:5", + "referencedDeclaration": 1115, + "src": "10243:4:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_memory_ptr", + "typeIdentifier": "t_struct$_Poll_$526_memory_ptr", "typeString": "struct PLCRVoting.Poll memory" } }, - "id": 3150, + "id": 1130, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "votesAgainst", "nodeType": "MemberAccess", - "referencedDeclaration": 2543, - "src": "10633:17:5", + "referencedDeclaration": 517, + "src": "10243:17:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10617:33:5", + "src": "10227:33:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 3152, + "id": 1132, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "10616:35:5", + "src": "10226:35:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10598:53:5", + "src": "10208:53:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 3154, + "id": 1134, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "10597:55:5", + "src": "10207:55:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10573:79:5", + "src": "10183:79:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 3127, - "id": 3156, + "functionReturnParameters": 1107, + "id": 1136, "nodeType": "Return", - "src": "10566:86:5" + "src": "10176:86:4" } ] }, "documentation": "@notice Determines if proposal has passed\n@dev Check if votesFor out of totalVotes exceeds votesQuorum (requires pollEnded)\n@param _pollID Integer identifier associated with target poll", - "id": 3158, + "id": 1138, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -24112,16 +24370,16 @@ "name": "isPassed", "nodeType": "FunctionDefinition", "parameters": { - "id": 3124, + "id": 1104, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3123, + "id": 1103, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3158, - "src": "10421:12:5", + "scope": 1138, + "src": "10047:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24129,10 +24387,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3122, + "id": 1102, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10421:4:5", + "src": "10047:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24142,20 +24400,20 @@ "visibility": "internal" } ], - "src": "10420:14:5" + "src": "10046:14:4" }, "payable": false, "returnParameters": { - "id": 3127, + "id": 1107, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3126, + "id": 1106, "name": "passed", "nodeType": "VariableDeclaration", - "scope": 3158, - "src": "10460:11:5", + "scope": 1138, + "src": "10082:11:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24163,10 +24421,10 @@ "typeString": "bool" }, "typeName": { - "id": 3125, + "id": 1105, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "10460:4:5", + "src": "10082:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24176,19 +24434,19 @@ "visibility": "internal" } ], - "src": "10459:13:5" + "src": "10081:13:4" }, - "scope": 3488, - "src": "10403:256:5", + "scope": 1471, + "src": "10029:238:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3185, + "id": 1165, "nodeType": "Block", - "src": "11078:185:5", + "src": "10664:159:4", "statements": [ { "expression": { @@ -24199,12 +24457,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3167, + "id": 1147, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3160, - "src": "11106:7:5", + "referencedDeclaration": 1140, + "src": "10688:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24218,18 +24476,18 @@ "typeString": "uint256" } ], - "id": 3166, + "id": 1146, "name": "pollEnded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3207, - "src": "11096:9:5", + "referencedDeclaration": 1187, + "src": "10678:9:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3168, + "id": 1148, "isConstant": false, "isLValue": false, "isPure": false, @@ -24237,7 +24495,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11096:18:5", + "src": "10678:18:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24251,21 +24509,21 @@ "typeString": "bool" } ], - "id": 3165, + "id": 1145, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "11088:7:5", + "referencedDeclaration": 3705, + "src": "10670:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3169, + "id": 1149, "isConstant": false, "isLValue": false, "isPure": false, @@ -24273,15 +24531,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11088:27:5", + "src": "10670:27:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3170, + "id": 1150, "nodeType": "ExpressionStatement", - "src": "11088:27:5" + "src": "10670:27:4" }, { "condition": { @@ -24289,12 +24547,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3172, + "id": 1152, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3160, - "src": "11139:7:5", + "referencedDeclaration": 1140, + "src": "10717:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24308,18 +24566,18 @@ "typeString": "uint256" } ], - "id": 3171, + "id": 1151, "name": "isPassed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3158, - "src": "11130:8:5", + "referencedDeclaration": 1138, + "src": "10708:8:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3173, + "id": 1153, "isConstant": false, "isLValue": false, "isPure": false, @@ -24327,7 +24585,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11130:17:5", + "src": "10708:17:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24340,26 +24598,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3179, + "id": 1159, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "11227:7:5", + "referencedDeclaration": 535, + "src": "10789:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3181, + "id": 1161, "indexExpression": { "argumentTypes": null, - "id": 3180, + "id": 1160, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3160, - "src": "11235:7:5", + "referencedDeclaration": 1140, + "src": "10797:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24370,34 +24628,34 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11227:16:5", + "src": "10789:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3182, + "id": 1162, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "votesAgainst", "nodeType": "MemberAccess", - "referencedDeclaration": 2543, - "src": "11227:29:5", + "referencedDeclaration": 517, + "src": "10789:29:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3164, - "id": 3183, + "functionReturnParameters": 1144, + "id": 1163, "nodeType": "Return", - "src": "11220:36:5" + "src": "10782:36:4" }, - "id": 3184, + "id": 1164, "nodeType": "IfStatement", - "src": "11126:130:5", + "src": "10704:114:4", "trueBody": { "expression": { "argumentTypes": null, @@ -24405,26 +24663,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3174, + "id": 1154, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "11168:7:5", + "referencedDeclaration": 535, + "src": "10740:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3176, + "id": 1156, "indexExpression": { "argumentTypes": null, - "id": 3175, + "id": 1155, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3160, - "src": "11176:7:5", + "referencedDeclaration": 1140, + "src": "10748:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24435,36 +24693,36 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11168:16:5", + "src": "10740:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3177, + "id": 1157, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "votesFor", "nodeType": "MemberAccess", - "referencedDeclaration": 2541, - "src": "11168:25:5", + "referencedDeclaration": 515, + "src": "10740:25:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3164, - "id": 3178, + "functionReturnParameters": 1144, + "id": 1158, "nodeType": "Return", - "src": "11161:32:5" + "src": "10733:32:4" } } ] }, "documentation": "@dev Gets the total winning votes for reward distribution purposes\n@param _pollID Integer identifier associated with target poll\n@return Total number of votes committed to the winning option for specified poll", - "id": 3186, + "id": 1166, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -24472,16 +24730,16 @@ "name": "getTotalNumberOfTokensForWinningOption", "nodeType": "FunctionDefinition", "parameters": { - "id": 3161, + "id": 1141, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3160, + "id": 1140, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3186, - "src": "11023:12:5", + "scope": 1166, + "src": "10613:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24489,10 +24747,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3159, + "id": 1139, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "11023:4:5", + "src": "10613:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24502,20 +24760,20 @@ "visibility": "internal" } ], - "src": "11022:14:5" + "src": "10612:14:4" }, "payable": false, "returnParameters": { - "id": 3164, + "id": 1144, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3163, + "id": 1143, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 3186, - "src": "11062:14:5", + "scope": 1166, + "src": "10648:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24523,10 +24781,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3162, + "id": 1142, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "11062:4:5", + "src": "10648:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24536,19 +24794,19 @@ "visibility": "internal" } ], - "src": "11061:16:5" + "src": "10647:16:4" }, - "scope": 3488, - "src": "10975:288:5", + "scope": 1471, + "src": "10565:258:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3206, + "id": 1186, "nodeType": "Block", - "src": "11519:104:5", + "src": "11063:94:4", "statements": [ { "expression": { @@ -24559,12 +24817,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3195, + "id": 1175, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3188, - "src": "11548:7:5", + "referencedDeclaration": 1168, + "src": "11088:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24578,18 +24836,18 @@ "typeString": "uint256" } ], - "id": 3194, + "id": 1174, "name": "pollExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3319, - "src": "11537:10:5", + "referencedDeclaration": 1299, + "src": "11077:10:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3196, + "id": 1176, "isConstant": false, "isLValue": false, "isPure": false, @@ -24597,7 +24855,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11537:19:5", + "src": "11077:19:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24611,21 +24869,21 @@ "typeString": "bool" } ], - "id": 3193, + "id": 1173, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "11529:7:5", + "referencedDeclaration": 3705, + "src": "11069:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3197, + "id": 1177, "isConstant": false, "isLValue": false, "isPure": false, @@ -24633,15 +24891,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11529:28:5", + "src": "11069:28:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3198, + "id": 1178, "nodeType": "ExpressionStatement", - "src": "11529:28:5" + "src": "11069:28:4" }, { "expression": { @@ -24653,26 +24911,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3200, + "id": 1180, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "11585:7:5", + "referencedDeclaration": 535, + "src": "11121:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3202, + "id": 1182, "indexExpression": { "argumentTypes": null, - "id": 3201, + "id": 1181, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3188, - "src": "11593:7:5", + "referencedDeclaration": 1168, + "src": "11129:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24683,21 +24941,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11585:16:5", + "src": "11121:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3203, + "id": 1183, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "revealEndDate", "nodeType": "MemberAccess", - "referencedDeclaration": 2537, - "src": "11585:30:5", + "referencedDeclaration": 511, + "src": "11121:30:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24711,18 +24969,18 @@ "typeString": "uint256" } ], - "id": 3199, + "id": 1179, "name": "isExpired", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3472, - "src": "11575:9:5", + "referencedDeclaration": 1452, + "src": "11111:9:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3204, + "id": 1184, "isConstant": false, "isLValue": false, "isPure": false, @@ -24730,21 +24988,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11575:41:5", + "src": "11111:41:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 3192, - "id": 3205, + "functionReturnParameters": 1172, + "id": 1185, "nodeType": "Return", - "src": "11568:48:5" + "src": "11104:48:4" } ] }, "documentation": "@notice Determines if poll is over\n@dev Checks isExpired for specified poll's revealEndDate\n@return Boolean indication of whether polling period is over", - "id": 3207, + "id": 1187, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -24752,16 +25010,16 @@ "name": "pollEnded", "nodeType": "FunctionDefinition", "parameters": { - "id": 3189, + "id": 1169, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3188, + "id": 1168, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3207, - "src": "11468:12:5", + "scope": 1187, + "src": "11016:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24769,10 +25027,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3187, + "id": 1167, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "11468:4:5", + "src": "11016:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24782,20 +25040,20 @@ "visibility": "internal" } ], - "src": "11467:14:5" + "src": "11015:14:4" }, "payable": false, "returnParameters": { - "id": 3192, + "id": 1172, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3191, + "id": 1171, "name": "ended", "nodeType": "VariableDeclaration", - "scope": 3207, - "src": "11507:10:5", + "scope": 1187, + "src": "11051:10:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24803,10 +25061,10 @@ "typeString": "bool" }, "typeName": { - "id": 3190, + "id": 1170, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "11507:4:5", + "src": "11051:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24816,19 +25074,19 @@ "visibility": "internal" } ], - "src": "11506:12:5" + "src": "11050:12:4" }, - "scope": 3488, - "src": "11449:174:5", + "scope": 1471, + "src": "10997:160:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3228, + "id": 1208, "nodeType": "Block", - "src": "12005:105:5", + "src": "11521:95:4", "statements": [ { "expression": { @@ -24839,12 +25097,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3216, + "id": 1196, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3209, - "src": "12034:7:5", + "referencedDeclaration": 1189, + "src": "11546:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24858,18 +25116,18 @@ "typeString": "uint256" } ], - "id": 3215, + "id": 1195, "name": "pollExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3319, - "src": "12023:10:5", + "referencedDeclaration": 1299, + "src": "11535:10:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3217, + "id": 1197, "isConstant": false, "isLValue": false, "isPure": false, @@ -24877,7 +25135,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12023:19:5", + "src": "11535:19:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24891,21 +25149,21 @@ "typeString": "bool" } ], - "id": 3214, + "id": 1194, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "12015:7:5", + "referencedDeclaration": 3705, + "src": "11527:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3218, + "id": 1198, "isConstant": false, "isLValue": false, "isPure": false, @@ -24913,20 +25171,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12015:28:5", + "src": "11527:28:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3219, + "id": 1199, "nodeType": "ExpressionStatement", - "src": "12015:28:5" + "src": "11527:28:4" }, { "expression": { "argumentTypes": null, - "id": 3226, + "id": 1206, "isConstant": false, "isLValue": false, "isPure": false, @@ -24934,7 +25192,7 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "12061:42:5", + "src": "11569:42:4", "subExpression": { "argumentTypes": null, "arguments": [ @@ -24944,26 +25202,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3221, + "id": 1201, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "12072:7:5", + "referencedDeclaration": 535, + "src": "11580:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3223, + "id": 1203, "indexExpression": { "argumentTypes": null, - "id": 3222, + "id": 1202, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3209, - "src": "12080:7:5", + "referencedDeclaration": 1189, + "src": "11588:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24974,21 +25232,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12072:16:5", + "src": "11580:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3224, + "id": 1204, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "commitEndDate", "nodeType": "MemberAccess", - "referencedDeclaration": 2535, - "src": "12072:30:5", + "referencedDeclaration": 509, + "src": "11580:30:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25002,18 +25260,18 @@ "typeString": "uint256" } ], - "id": 3220, + "id": 1200, "name": "isExpired", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3472, - "src": "12062:9:5", + "referencedDeclaration": 1452, + "src": "11570:9:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3225, + "id": 1205, "isConstant": false, "isLValue": false, "isPure": false, @@ -25021,7 +25279,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12062:41:5", + "src": "11570:41:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25032,15 +25290,15 @@ "typeString": "bool" } }, - "functionReturnParameters": 3213, - "id": 3227, + "functionReturnParameters": 1193, + "id": 1207, "nodeType": "Return", - "src": "12054:49:5" + "src": "11562:49:4" } ] }, "documentation": "@notice Checks if the commit period is still active for the specified poll\n@dev Checks isExpired for the specified poll's commitEndDate\n@param _pollID Integer identifier associated with target poll\n@return Boolean indication of isCommitPeriodActive for target poll", - "id": 3229, + "id": 1209, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -25048,16 +25306,16 @@ "name": "commitPeriodActive", "nodeType": "FunctionDefinition", "parameters": { - "id": 3210, + "id": 1190, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3209, + "id": 1189, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3229, - "src": "11953:12:5", + "scope": 1209, + "src": "11473:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25065,10 +25323,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3208, + "id": 1188, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "11953:4:5", + "src": "11473:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25078,20 +25336,20 @@ "visibility": "internal" } ], - "src": "11952:14:5" + "src": "11472:14:4" }, "payable": false, "returnParameters": { - "id": 3213, + "id": 1193, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3212, + "id": 1192, "name": "active", "nodeType": "VariableDeclaration", - "scope": 3229, - "src": "11992:11:5", + "scope": 1209, + "src": "11508:11:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25099,10 +25357,10 @@ "typeString": "bool" }, "typeName": { - "id": 3211, + "id": 1191, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "11992:4:5", + "src": "11508:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25112,19 +25370,19 @@ "visibility": "internal" } ], - "src": "11991:13:5" + "src": "11507:13:4" }, - "scope": 3488, - "src": "11925:185:5", + "scope": 1471, + "src": "11445:171:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3255, + "id": 1235, "nodeType": "Block", - "src": "12421:137:5", + "src": "11911:127:4", "statements": [ { "expression": { @@ -25135,12 +25393,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3238, + "id": 1218, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3231, - "src": "12450:7:5", + "referencedDeclaration": 1211, + "src": "11936:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25154,18 +25412,18 @@ "typeString": "uint256" } ], - "id": 3237, + "id": 1217, "name": "pollExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3319, - "src": "12439:10:5", + "referencedDeclaration": 1299, + "src": "11925:10:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3239, + "id": 1219, "isConstant": false, "isLValue": false, "isPure": false, @@ -25173,7 +25431,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12439:19:5", + "src": "11925:19:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25187,21 +25445,21 @@ "typeString": "bool" } ], - "id": 3236, + "id": 1216, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "12431:7:5", + "referencedDeclaration": 3705, + "src": "11917:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3240, + "id": 1220, "isConstant": false, "isLValue": false, "isPure": false, @@ -25209,15 +25467,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12431:28:5", + "src": "11917:28:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3241, + "id": 1221, "nodeType": "ExpressionStatement", - "src": "12431:28:5" + "src": "11917:28:4" }, { "expression": { @@ -25226,14 +25484,14 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 3253, + "id": 1233, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3248, + "id": 1228, "isConstant": false, "isLValue": false, "isPure": false, @@ -25241,7 +25499,7 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "12477:42:5", + "src": "11959:42:4", "subExpression": { "argumentTypes": null, "arguments": [ @@ -25251,26 +25509,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3243, + "id": 1223, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "12488:7:5", + "referencedDeclaration": 535, + "src": "11970:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3245, + "id": 1225, "indexExpression": { "argumentTypes": null, - "id": 3244, + "id": 1224, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3231, - "src": "12496:7:5", + "referencedDeclaration": 1211, + "src": "11978:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25281,21 +25539,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12488:16:5", + "src": "11970:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3246, + "id": 1226, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "revealEndDate", "nodeType": "MemberAccess", - "referencedDeclaration": 2537, - "src": "12488:30:5", + "referencedDeclaration": 511, + "src": "11970:30:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25309,18 +25567,18 @@ "typeString": "uint256" } ], - "id": 3242, + "id": 1222, "name": "isExpired", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3472, - "src": "12478:9:5", + "referencedDeclaration": 1452, + "src": "11960:9:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3247, + "id": 1227, "isConstant": false, "isLValue": false, "isPure": false, @@ -25328,7 +25586,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12478:41:5", + "src": "11960:41:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25343,7 +25601,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 3252, + "id": 1232, "isConstant": false, "isLValue": false, "isPure": false, @@ -25351,18 +25609,18 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "12523:28:5", + "src": "12005:28:4", "subExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3250, + "id": 1230, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3231, - "src": "12543:7:5", + "referencedDeclaration": 1211, + "src": "12025:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25376,18 +25634,18 @@ "typeString": "uint256" } ], - "id": 3249, + "id": 1229, "name": "commitPeriodActive", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3229, - "src": "12524:18:5", + "referencedDeclaration": 1209, + "src": "12006:18:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3251, + "id": 1231, "isConstant": false, "isLValue": false, "isPure": false, @@ -25395,7 +25653,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12524:27:5", + "src": "12006:27:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25406,21 +25664,21 @@ "typeString": "bool" } }, - "src": "12477:74:5", + "src": "11959:74:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 3235, - "id": 3254, + "functionReturnParameters": 1215, + "id": 1234, "nodeType": "Return", - "src": "12470:81:5" + "src": "11952:81:4" } ] }, "documentation": "@notice Checks if the reveal period is still active for the specified poll\n@dev Checks isExpired for the specified poll's revealEndDate\n@param _pollID Integer identifier associated with target poll", - "id": 3256, + "id": 1236, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -25428,16 +25686,16 @@ "name": "revealPeriodActive", "nodeType": "FunctionDefinition", "parameters": { - "id": 3232, + "id": 1212, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3231, + "id": 1211, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3256, - "src": "12369:12:5", + "scope": 1236, + "src": "11863:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25445,10 +25703,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3230, + "id": 1210, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12369:4:5", + "src": "11863:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25458,20 +25716,20 @@ "visibility": "internal" } ], - "src": "12368:14:5" + "src": "11862:14:4" }, "payable": false, "returnParameters": { - "id": 3235, + "id": 1215, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3234, + "id": 1214, "name": "active", "nodeType": "VariableDeclaration", - "scope": 3256, - "src": "12408:11:5", + "scope": 1236, + "src": "11898:11:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25479,10 +25737,10 @@ "typeString": "bool" }, "typeName": { - "id": 3233, + "id": 1213, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "12408:4:5", + "src": "11898:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25492,19 +25750,19 @@ "visibility": "internal" } ], - "src": "12407:13:5" + "src": "11897:13:4" }, - "scope": 3488, - "src": "12341:217:5", + "scope": 1471, + "src": "11835:203:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3278, + "id": 1258, "nodeType": "Block", - "src": "12904:97:5", + "src": "12366:87:4", "statements": [ { "expression": { @@ -25515,12 +25773,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3267, + "id": 1247, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3260, - "src": "12933:7:5", + "referencedDeclaration": 1240, + "src": "12391:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25534,18 +25792,18 @@ "typeString": "uint256" } ], - "id": 3266, + "id": 1246, "name": "pollExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3319, - "src": "12922:10:5", + "referencedDeclaration": 1299, + "src": "12380:10:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3268, + "id": 1248, "isConstant": false, "isLValue": false, "isPure": false, @@ -25553,7 +25811,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12922:19:5", + "src": "12380:19:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25567,21 +25825,21 @@ "typeString": "bool" } ], - "id": 3265, + "id": 1245, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "12914:7:5", + "referencedDeclaration": 3705, + "src": "12372:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3269, + "id": 1249, "isConstant": false, "isLValue": false, "isPure": false, @@ -25589,15 +25847,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12914:28:5", + "src": "12372:28:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3270, + "id": 1250, "nodeType": "ExpressionStatement", - "src": "12914:28:5" + "src": "12372:28:4" }, { "expression": { @@ -25608,26 +25866,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3271, + "id": 1251, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "12960:7:5", + "referencedDeclaration": 535, + "src": "12414:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3273, + "id": 1253, "indexExpression": { "argumentTypes": null, - "id": 3272, + "id": 1252, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3260, - "src": "12968:7:5", + "referencedDeclaration": 1240, + "src": "12422:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25638,35 +25896,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12960:16:5", + "src": "12414:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3274, + "id": 1254, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "didCommit", "nodeType": "MemberAccess", - "referencedDeclaration": 2547, - "src": "12960:26:5", + "referencedDeclaration": 521, + "src": "12414:26:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 3276, + "id": 1256, "indexExpression": { "argumentTypes": null, - "id": 3275, + "id": 1255, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3258, - "src": "12987:6:5", + "referencedDeclaration": 1238, + "src": "12441:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25677,21 +25935,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12960:34:5", + "src": "12414:34:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 3264, - "id": 3277, + "functionReturnParameters": 1244, + "id": 1257, "nodeType": "Return", - "src": "12953:41:5" + "src": "12407:41:4" } ] }, "documentation": "@dev Checks if user has committed for specified poll\n@param _voter Address of user to check against\n@param _pollID Integer identifier associated with target poll\n@return Boolean indication of whether user has committed", - "id": 3279, + "id": 1259, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -25699,16 +25957,16 @@ "name": "didCommit", "nodeType": "FunctionDefinition", "parameters": { - "id": 3261, + "id": 1241, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3258, + "id": 1238, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3279, - "src": "12833:14:5", + "scope": 1259, + "src": "12299:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25716,10 +25974,10 @@ "typeString": "address" }, "typeName": { - "id": 3257, + "id": 1237, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12833:7:5", + "src": "12299:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25730,11 +25988,11 @@ }, { "constant": false, - "id": 3260, + "id": 1240, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3279, - "src": "12849:12:5", + "scope": 1259, + "src": "12315:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25742,10 +26000,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3259, + "id": 1239, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12849:4:5", + "src": "12315:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25755,20 +26013,20 @@ "visibility": "internal" } ], - "src": "12832:30:5" + "src": "12298:30:4" }, "payable": false, "returnParameters": { - "id": 3264, + "id": 1244, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3263, + "id": 1243, "name": "committed", "nodeType": "VariableDeclaration", - "scope": 3279, - "src": "12888:14:5", + "scope": 1259, + "src": "12350:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25776,10 +26034,10 @@ "typeString": "bool" }, "typeName": { - "id": 3262, + "id": 1242, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "12888:4:5", + "src": "12350:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25789,19 +26047,19 @@ "visibility": "internal" } ], - "src": "12887:16:5" + "src": "12349:16:4" }, - "scope": 3488, - "src": "12814:187:5", + "scope": 1471, + "src": "12280:173:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3301, + "id": 1281, "nodeType": "Block", - "src": "13344:97:5", + "src": "12778:87:4", "statements": [ { "expression": { @@ -25812,12 +26070,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3290, + "id": 1270, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3283, - "src": "13373:7:5", + "referencedDeclaration": 1263, + "src": "12803:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25831,18 +26089,18 @@ "typeString": "uint256" } ], - "id": 3289, + "id": 1269, "name": "pollExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3319, - "src": "13362:10:5", + "referencedDeclaration": 1299, + "src": "12792:10:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view returns (bool)" } }, - "id": 3291, + "id": 1271, "isConstant": false, "isLValue": false, "isPure": false, @@ -25850,7 +26108,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13362:19:5", + "src": "12792:19:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25864,21 +26122,21 @@ "typeString": "bool" } ], - "id": 3288, + "id": 1268, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "13354:7:5", + "referencedDeclaration": 3705, + "src": "12784:7:4", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3292, + "id": 1272, "isConstant": false, "isLValue": false, "isPure": false, @@ -25886,15 +26144,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13354:28:5", + "src": "12784:28:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3293, + "id": 1273, "nodeType": "ExpressionStatement", - "src": "13354:28:5" + "src": "12784:28:4" }, { "expression": { @@ -25905,26 +26163,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3294, + "id": 1274, "name": "pollMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2561, - "src": "13400:7:5", + "referencedDeclaration": 535, + "src": "12826:7:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$2552_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Poll_$526_storage_$", "typeString": "mapping(uint256 => struct PLCRVoting.Poll storage ref)" } }, - "id": 3296, + "id": 1276, "indexExpression": { "argumentTypes": null, - "id": 3295, + "id": 1275, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3283, - "src": "13408:7:5", + "referencedDeclaration": 1263, + "src": "12834:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25935,35 +26193,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13400:16:5", + "src": "12826:16:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Poll_$2552_storage", + "typeIdentifier": "t_struct$_Poll_$526_storage", "typeString": "struct PLCRVoting.Poll storage ref" } }, - "id": 3297, + "id": 1277, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "didReveal", "nodeType": "MemberAccess", - "referencedDeclaration": 2551, - "src": "13400:26:5", + "referencedDeclaration": 525, + "src": "12826:26:4", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 3299, + "id": 1279, "indexExpression": { "argumentTypes": null, - "id": 3298, + "id": 1278, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3281, - "src": "13427:6:5", + "referencedDeclaration": 1261, + "src": "12853:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25974,21 +26232,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13400:34:5", + "src": "12826:34:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 3287, - "id": 3300, + "functionReturnParameters": 1267, + "id": 1280, "nodeType": "Return", - "src": "13393:41:5" + "src": "12819:41:4" } ] }, "documentation": "@dev Checks if user has revealed for specified poll\n@param _voter Address of user to check against\n@param _pollID Integer identifier associated with target poll\n@return Boolean indication of whether user has revealed", - "id": 3302, + "id": 1282, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -25996,16 +26254,16 @@ "name": "didReveal", "nodeType": "FunctionDefinition", "parameters": { - "id": 3284, + "id": 1264, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3281, + "id": 1261, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3302, - "src": "13274:14:5", + "scope": 1282, + "src": "12712:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26013,10 +26271,10 @@ "typeString": "address" }, "typeName": { - "id": 3280, + "id": 1260, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13274:7:5", + "src": "12712:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26027,11 +26285,11 @@ }, { "constant": false, - "id": 3283, + "id": 1263, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3302, - "src": "13290:12:5", + "scope": 1282, + "src": "12728:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26039,10 +26297,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3282, + "id": 1262, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "13290:4:5", + "src": "12728:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26052,20 +26310,20 @@ "visibility": "internal" } ], - "src": "13273:30:5" + "src": "12711:30:4" }, "payable": false, "returnParameters": { - "id": 3287, + "id": 1267, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3286, + "id": 1266, "name": "revealed", "nodeType": "VariableDeclaration", - "scope": 3302, - "src": "13329:13:5", + "scope": 1282, + "src": "12763:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26073,10 +26331,10 @@ "typeString": "bool" }, "typeName": { - "id": 3285, + "id": 1265, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13329:4:5", + "src": "12763:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26086,19 +26344,19 @@ "visibility": "internal" } ], - "src": "13328:15:5" + "src": "12762:15:4" }, - "scope": 3488, - "src": "13255:186:5", + "scope": 1471, + "src": "12693:172:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3318, + "id": 1298, "nodeType": "Block", - "src": "13709:62:5", + "src": "13117:56:4", "statements": [ { "expression": { @@ -26110,7 +26368,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 3315, + "id": 1295, "isConstant": false, "isLValue": false, "isPure": false, @@ -26121,19 +26379,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3311, + "id": 1291, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3309, + "id": 1289, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3304, - "src": "13727:7:5", + "referencedDeclaration": 1284, + "src": "13131:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26144,14 +26402,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 3310, + "id": 1290, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13738:1:5", + "src": "13142:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -26159,7 +26417,7 @@ }, "value": "0" }, - "src": "13727:12:5", + "src": "13131:12:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26173,19 +26431,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3314, + "id": 1294, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3312, + "id": 1292, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3304, - "src": "13743:7:5", + "referencedDeclaration": 1284, + "src": "13147:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26195,52 +26453,52 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 3313, + "id": 1293, "name": "pollNonce", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2557, - "src": "13754:9:5", + "referencedDeclaration": 531, + "src": "13158:9:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13743:20:5", + "src": "13147:20:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "13727:36:5", + "src": "13131:36:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 3316, + "id": 1296, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "13726:38:5", + "src": "13130:38:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 3308, - "id": 3317, + "functionReturnParameters": 1288, + "id": 1297, "nodeType": "Return", - "src": "13719:45:5" + "src": "13123:45:4" } ] }, "documentation": "@dev Checks if a poll exists\n@param _pollID The pollID whose existance is to be evaluated.\n@return Boolean Indicates whether a poll exists for the provided pollID", - "id": 3319, + "id": 1299, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -26248,16 +26506,16 @@ "name": "pollExists", "nodeType": "FunctionDefinition", "parameters": { - "id": 3305, + "id": 1285, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3304, + "id": 1284, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3319, - "src": "13657:12:5", + "scope": 1299, + "src": "13069:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26265,10 +26523,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3303, + "id": 1283, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "13657:4:5", + "src": "13069:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26278,20 +26536,20 @@ "visibility": "internal" } ], - "src": "13656:14:5" + "src": "13068:14:4" }, "payable": false, "returnParameters": { - "id": 3308, + "id": 1288, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3307, + "id": 1287, "name": "exists", "nodeType": "VariableDeclaration", - "scope": 3319, - "src": "13696:11:5", + "scope": 1299, + "src": "13104:11:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26299,10 +26557,10 @@ "typeString": "bool" }, "typeName": { - "id": 3306, + "id": 1286, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13696:4:5", + "src": "13104:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26312,19 +26570,19 @@ "visibility": "internal" } ], - "src": "13695:13:5" + "src": "13103:13:4" }, - "scope": 3488, - "src": "13637:134:5", + "scope": 1471, + "src": "13049:124:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3339, + "id": 1319, "nodeType": "Block", - "src": "14232:92:5", + "src": "13610:86:4", "statements": [ { "expression": { @@ -26338,12 +26596,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3332, + "id": 1312, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3321, - "src": "14285:6:5", + "referencedDeclaration": 1301, + "src": "13659:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26351,12 +26609,12 @@ }, { "argumentTypes": null, - "id": 3333, + "id": 1313, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3323, - "src": "14293:7:5", + "referencedDeclaration": 1303, + "src": "13667:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26374,18 +26632,18 @@ "typeString": "uint256" } ], - "id": 3331, + "id": 1311, "name": "attrUUID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3487, - "src": "14276:8:5", + "referencedDeclaration": 1470, + "src": "13650:8:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_address_$_t_uint256_$returns$_t_bytes32_$", "typeString": "function (address,uint256) pure returns (bytes32)" } }, - "id": 3334, + "id": 1314, "isConstant": false, "isLValue": false, "isPure": false, @@ -26393,7 +26651,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14276:25:5", + "src": "13650:25:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -26402,14 +26660,14 @@ { "argumentTypes": null, "hexValue": "636f6d6d697448617368", - "id": 3335, + "id": 1315, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "14303:12:5", + "src": "13677:12:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_207714604a0440a484c6569f8718c59de7b49b2f64c69153d0c80360597b39a3", @@ -26431,32 +26689,32 @@ ], "expression": { "argumentTypes": null, - "id": 3329, + "id": 1309, "name": "store", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2571, - "src": "14257:5:5", + "referencedDeclaration": 545, + "src": "13631:5:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage", + "typeIdentifier": "t_struct$_Data_$6_storage", "typeString": "struct AttributeStore.Data storage ref" } }, - "id": 3330, + "id": 1310, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "getAttribute", "nodeType": "MemberAccess", - "referencedDeclaration": 2137, - "src": "14257:18:5", + "referencedDeclaration": 33, + "src": "13631:18:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2113_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_struct$_Data_$2113_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$6_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_struct$_Data_$6_storage_ptr_$", "typeString": "function (struct AttributeStore.Data storage pointer,bytes32,string memory) view returns (uint256)" } }, - "id": 3336, + "id": 1316, "isConstant": false, "isLValue": false, "isPure": false, @@ -26464,7 +26722,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14257:59:5", + "src": "13631:59:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26478,20 +26736,20 @@ "typeString": "uint256" } ], - "id": 3328, + "id": 1308, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "14249:7:5", + "src": "13623:7:4", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes32_$", "typeString": "type(bytes32)" }, "typeName": "bytes32" }, - "id": 3337, + "id": 1317, "isConstant": false, "isLValue": false, "isPure": false, @@ -26499,21 +26757,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14249:68:5", + "src": "13623:68:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "functionReturnParameters": 3327, - "id": 3338, + "functionReturnParameters": 1307, + "id": 1318, "nodeType": "Return", - "src": "14242:75:5" + "src": "13616:75:4" } ] }, "documentation": "@dev Gets the bytes32 commitHash property of target poll\n@param _voter Address of user to check against\n@param _pollID Integer identifier associated with target poll\n@return Bytes32 hash property attached to target poll", - "id": 3340, + "id": 1320, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -26521,16 +26779,16 @@ "name": "getCommitHash", "nodeType": "FunctionDefinition", "parameters": { - "id": 3324, + "id": 1304, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3321, + "id": 1301, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3340, - "src": "14157:14:5", + "scope": 1320, + "src": "13539:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26538,10 +26796,10 @@ "typeString": "address" }, "typeName": { - "id": 3320, + "id": 1300, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14157:7:5", + "src": "13539:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26552,11 +26810,11 @@ }, { "constant": false, - "id": 3323, + "id": 1303, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3340, - "src": "14173:12:5", + "scope": 1320, + "src": "13555:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26564,10 +26822,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3322, + "id": 1302, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "14173:4:5", + "src": "13555:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26577,20 +26835,20 @@ "visibility": "internal" } ], - "src": "14156:30:5" + "src": "13538:30:4" }, "payable": false, "returnParameters": { - "id": 3327, + "id": 1307, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3326, + "id": 1306, "name": "commitHash", "nodeType": "VariableDeclaration", - "scope": 3340, - "src": "14212:18:5", + "scope": 1320, + "src": "13590:18:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26598,10 +26856,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3325, + "id": 1305, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "14212:7:5", + "src": "13590:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -26611,19 +26869,19 @@ "visibility": "internal" } ], - "src": "14211:20:5" + "src": "13589:20:4" }, - "scope": 3488, - "src": "14134:190:5", + "scope": 1471, + "src": "13516:180:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3358, + "id": 1338, "nodeType": "Block", - "src": "14689:82:5", + "src": "14043:76:4", "statements": [ { "expression": { @@ -26634,12 +26892,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3352, + "id": 1332, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3342, - "src": "14734:6:5", + "referencedDeclaration": 1322, + "src": "14084:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26647,12 +26905,12 @@ }, { "argumentTypes": null, - "id": 3353, + "id": 1333, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3344, - "src": "14742:7:5", + "referencedDeclaration": 1324, + "src": "14092:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26670,18 +26928,18 @@ "typeString": "uint256" } ], - "id": 3351, + "id": 1331, "name": "attrUUID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3487, - "src": "14725:8:5", + "referencedDeclaration": 1470, + "src": "14075:8:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_pure$_t_address_$_t_uint256_$returns$_t_bytes32_$", "typeString": "function (address,uint256) pure returns (bytes32)" } }, - "id": 3354, + "id": 1334, "isConstant": false, "isLValue": false, "isPure": false, @@ -26689,7 +26947,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14725:25:5", + "src": "14075:25:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -26698,14 +26956,14 @@ { "argumentTypes": null, "hexValue": "6e756d546f6b656e73", - "id": 3355, + "id": 1335, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "14752:11:5", + "src": "14102:11:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_aaabf4403cd242796b0e69a57762477ad48e1fa250247ff93eeada3e5b75581a", @@ -26727,32 +26985,32 @@ ], "expression": { "argumentTypes": null, - "id": 3349, + "id": 1329, "name": "store", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2571, - "src": "14706:5:5", + "referencedDeclaration": 545, + "src": "14056:5:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2113_storage", + "typeIdentifier": "t_struct$_Data_$6_storage", "typeString": "struct AttributeStore.Data storage ref" } }, - "id": 3350, + "id": 1330, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "getAttribute", "nodeType": "MemberAccess", - "referencedDeclaration": 2137, - "src": "14706:18:5", + "referencedDeclaration": 33, + "src": "14056:18:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2113_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_struct$_Data_$2113_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$6_storage_ptr_$_t_bytes32_$_t_string_memory_ptr_$returns$_t_uint256_$bound_to$_t_struct$_Data_$6_storage_ptr_$", "typeString": "function (struct AttributeStore.Data storage pointer,bytes32,string memory) view returns (uint256)" } }, - "id": 3356, + "id": 1336, "isConstant": false, "isLValue": false, "isPure": false, @@ -26760,21 +27018,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14706:58:5", + "src": "14056:58:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3348, - "id": 3357, + "functionReturnParameters": 1328, + "id": 1337, "nodeType": "Return", - "src": "14699:65:5" + "src": "14049:65:4" } ] }, "documentation": "@dev Wrapper for getAttribute with attrName=\"numTokens\"\n@param _voter Address of user to check against\n@param _pollID Integer identifier associated with target poll\n@return Number of tokens committed to poll in sorted poll-linked-list", - "id": 3359, + "id": 1339, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -26782,16 +27040,16 @@ "name": "getNumTokens", "nodeType": "FunctionDefinition", "parameters": { - "id": 3345, + "id": 1325, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3342, + "id": 1322, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3359, - "src": "14618:14:5", + "scope": 1339, + "src": "13976:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26799,10 +27057,10 @@ "typeString": "address" }, "typeName": { - "id": 3341, + "id": 1321, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14618:7:5", + "src": "13976:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26813,11 +27071,11 @@ }, { "constant": false, - "id": 3344, + "id": 1324, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3359, - "src": "14634:12:5", + "scope": 1339, + "src": "13992:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26825,10 +27083,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3343, + "id": 1323, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "14634:4:5", + "src": "13992:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26838,20 +27096,20 @@ "visibility": "internal" } ], - "src": "14617:30:5" + "src": "13975:30:4" }, "payable": false, "returnParameters": { - "id": 3348, + "id": 1328, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3347, + "id": 1327, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 3359, - "src": "14673:14:5", + "scope": 1339, + "src": "14027:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26859,10 +27117,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3346, + "id": 1326, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "14673:4:5", + "src": "14027:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26872,19 +27130,19 @@ "visibility": "internal" } ], - "src": "14672:16:5" + "src": "14026:16:4" }, - "scope": 3488, - "src": "14596:175:5", + "scope": 1471, + "src": "13954:165:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3373, + "id": 1353, "nodeType": "Block", - "src": "15056:49:5", + "src": "14388:43:4", "statements": [ { "expression": { @@ -26893,14 +27151,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 3370, + "id": 1350, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "15096:1:5", + "src": "14424:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -26920,26 +27178,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3366, + "id": 1346, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "15073:6:5", + "referencedDeclaration": 543, + "src": "14401:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 3368, + "id": 1348, "indexExpression": { "argumentTypes": null, - "id": 3367, + "id": 1347, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3361, - "src": "15080:6:5", + "referencedDeclaration": 1341, + "src": "14408:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26950,27 +27208,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15073:14:5", + "src": "14401:14:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 3369, + "id": 1349, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "getPrev", "nodeType": "MemberAccess", - "referencedDeclaration": 2286, - "src": "15073:22:5", + "referencedDeclaration": 185, + "src": "14401:22:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 3371, + "id": 1351, "isConstant": false, "isLValue": false, "isPure": false, @@ -26978,21 +27236,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15073:25:5", + "src": "14401:25:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3365, - "id": 3372, + "functionReturnParameters": 1345, + "id": 1352, "nodeType": "Return", - "src": "15066:32:5" + "src": "14394:32:4" } ] }, "documentation": "@dev Gets top element of sorted poll-linked-list\n@param _voter Address of user to check against\n@return Integer identifier to poll with maximum number of tokens committed to it", - "id": 3374, + "id": 1354, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -27000,16 +27258,16 @@ "name": "getLastNode", "nodeType": "FunctionDefinition", "parameters": { - "id": 3362, + "id": 1342, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3361, + "id": 1341, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3374, - "src": "15002:14:5", + "scope": 1354, + "src": "14338:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27017,10 +27275,10 @@ "typeString": "address" }, "typeName": { - "id": 3360, + "id": 1340, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15002:7:5", + "src": "14338:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27030,20 +27288,20 @@ "visibility": "internal" } ], - "src": "15001:16:5" + "src": "14337:16:4" }, "payable": false, "returnParameters": { - "id": 3365, + "id": 1345, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3364, + "id": 1344, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 3374, - "src": "15043:11:5", + "scope": 1354, + "src": "14375:11:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27051,10 +27309,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3363, + "id": 1343, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "15043:4:5", + "src": "14375:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27064,19 +27322,19 @@ "visibility": "internal" } ], - "src": "15042:13:5" + "src": "14374:13:4" }, - "scope": 3488, - "src": "14981:124:5", + "scope": 1471, + "src": "14317:114:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3388, + "id": 1368, "nodeType": "Block", - "src": "15376:65:5", + "src": "14686:59:4", "statements": [ { "expression": { @@ -27084,12 +27342,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3382, + "id": 1362, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3376, - "src": "15406:6:5", + "referencedDeclaration": 1356, + "src": "14712:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27100,12 +27358,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3384, + "id": 1364, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3376, - "src": "15426:6:5", + "referencedDeclaration": 1356, + "src": "14732:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27119,18 +27377,18 @@ "typeString": "address" } ], - "id": 3383, + "id": 1363, "name": "getLastNode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3374, - "src": "15414:11:5", + "referencedDeclaration": 1354, + "src": "14720:11:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 3385, + "id": 1365, "isConstant": false, "isLValue": false, "isPure": false, @@ -27138,7 +27396,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15414:19:5", + "src": "14720:19:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27156,18 +27414,18 @@ "typeString": "uint256" } ], - "id": 3381, + "id": 1361, "name": "getNumTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3359, - "src": "15393:12:5", + "referencedDeclaration": 1339, + "src": "14699:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, - "id": 3386, + "id": 1366, "isConstant": false, "isLValue": false, "isPure": false, @@ -27175,21 +27433,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15393:41:5", + "src": "14699:41:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3380, - "id": 3387, + "functionReturnParameters": 1360, + "id": 1367, "nodeType": "Return", - "src": "15386:48:5" + "src": "14692:48:4" } ] }, "documentation": "@dev Gets the numTokens property of getLastNode\n@param _voter Address of user to check against\n@return Maximum number of tokens committed in poll specified", - "id": 3389, + "id": 1369, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -27197,16 +27455,16 @@ "name": "getLockedTokens", "nodeType": "FunctionDefinition", "parameters": { - "id": 3377, + "id": 1357, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3376, + "id": 1356, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3389, - "src": "15319:14:5", + "scope": 1369, + "src": "14633:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27214,10 +27472,10 @@ "typeString": "address" }, "typeName": { - "id": 3375, + "id": 1355, "name": "address", "nodeType": "ElementaryTypeName", - "src": "15319:7:5", + "src": "14633:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27227,20 +27485,20 @@ "visibility": "internal" } ], - "src": "15318:16:5" + "src": "14632:16:4" }, "payable": false, "returnParameters": { - "id": 3380, + "id": 1360, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3379, + "id": 1359, "name": "numTokens", "nodeType": "VariableDeclaration", - "scope": 3389, - "src": "15360:14:5", + "scope": 1369, + "src": "14670:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27248,10 +27506,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3378, + "id": 1358, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "15360:4:5", + "src": "14670:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27261,32 +27519,32 @@ "visibility": "internal" } ], - "src": "15359:16:5" + "src": "14669:16:4" }, - "scope": 3488, - "src": "15294:147:5", + "scope": 1471, + "src": "14608:137:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3457, + "id": 1437, "nodeType": "Block", - "src": "16278:990:5", + "src": "15556:951:4", "statements": [ { "assignments": [ - 3401 + 1381 ], "declarations": [ { "constant": false, - "id": 3401, + "id": 1381, "name": "nodeID", "nodeType": "VariableDeclaration", - "scope": 3458, - "src": "16363:11:5", + "scope": 1438, + "src": "15637:11:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27294,10 +27552,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3400, + "id": 1380, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "16363:4:5", + "src": "15637:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27307,18 +27565,18 @@ "visibility": "internal" } ], - "id": 3405, + "id": 1385, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3403, + "id": 1383, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3391, - "src": "16389:6:5", + "referencedDeclaration": 1371, + "src": "15663:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27332,18 +27590,18 @@ "typeString": "address" } ], - "id": 3402, + "id": 1382, "name": "getLastNode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3374, - "src": "16377:11:5", + "referencedDeclaration": 1354, + "src": "15651:11:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 3404, + "id": 1384, "isConstant": false, "isLValue": false, "isPure": false, @@ -27351,27 +27609,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16377:19:5", + "src": "15651:19:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "16363:33:5" + "src": "15637:33:4" }, { "assignments": [ - 3407 + 1387 ], "declarations": [ { "constant": false, - "id": 3407, + "id": 1387, "name": "tokensInNode", "nodeType": "VariableDeclaration", - "scope": 3458, - "src": "16404:17:5", + "scope": 1438, + "src": "15676:17:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27379,10 +27637,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3406, + "id": 1386, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "16404:4:5", + "src": "15676:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27392,18 +27650,18 @@ "visibility": "internal" } ], - "id": 3412, + "id": 1392, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 3409, + "id": 1389, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3391, - "src": "16437:6:5", + "referencedDeclaration": 1371, + "src": "15709:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27411,12 +27669,12 @@ }, { "argumentTypes": null, - "id": 3410, + "id": 1390, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "16445:6:5", + "referencedDeclaration": 1381, + "src": "15717:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27434,18 +27692,18 @@ "typeString": "uint256" } ], - "id": 3408, + "id": 1388, "name": "getNumTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3359, - "src": "16424:12:5", + "referencedDeclaration": 1339, + "src": "15696:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, - "id": 3411, + "id": 1391, "isConstant": false, "isLValue": false, "isPure": false, @@ -27453,37 +27711,37 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16424:28:5", + "src": "15696:28:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "16404:48:5" + "src": "15676:48:4" }, { "body": { - "id": 3453, + "id": 1433, "nodeType": "Block", - "src": "16553:591:5", + "src": "15822:567:4", "statements": [ { "expression": { "argumentTypes": null, - "id": 3421, + "id": 1401, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 3416, + "id": 1396, "name": "tokensInNode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3407, - "src": "16619:12:5", + "referencedDeclaration": 1387, + "src": "15884:12:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27496,12 +27754,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3418, + "id": 1398, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3391, - "src": "16647:6:5", + "referencedDeclaration": 1371, + "src": "15912:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27509,12 +27767,12 @@ }, { "argumentTypes": null, - "id": 3419, + "id": 1399, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "16655:6:5", + "referencedDeclaration": 1381, + "src": "15920:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27532,18 +27790,18 @@ "typeString": "uint256" } ], - "id": 3417, + "id": 1397, "name": "getNumTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3359, - "src": "16634:12:5", + "referencedDeclaration": 1339, + "src": "15899:12:4", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256) view returns (uint256)" } }, - "id": 3420, + "id": 1400, "isConstant": false, "isLValue": false, "isPure": false, @@ -27551,21 +27809,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16634:28:5", + "src": "15899:28:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "16619:43:5", + "src": "15884:43:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3422, + "id": 1402, "nodeType": "ExpressionStatement", - "src": "16619:43:5" + "src": "15884:43:4" }, { "condition": { @@ -27574,19 +27832,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3425, + "id": 1405, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3423, + "id": 1403, "name": "tokensInNode", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3407, - "src": "16675:12:5", + "referencedDeclaration": 1387, + "src": "15939:12:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27596,31 +27854,31 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 3424, + "id": 1404, "name": "_numTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3393, - "src": "16691:10:5", + "referencedDeclaration": 1373, + "src": "15955:10:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "16675:26:5", + "src": "15939:26:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 3443, + "id": 1423, "nodeType": "IfStatement", - "src": "16672:324:5", + "src": "15935:312:4", "trueBody": { - "id": 3442, + "id": 1422, "nodeType": "Block", - "src": "16703:293:5", + "src": "15967:280:4", "statements": [ { "condition": { @@ -27629,19 +27887,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3428, + "id": 1408, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3426, + "id": 1406, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "16748:6:5", + "referencedDeclaration": 1381, + "src": "16011:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27651,48 +27909,48 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 3427, + "id": 1407, "name": "_pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3395, - "src": "16758:7:5", + "referencedDeclaration": 1375, + "src": "16021:7:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "16748:17:5", + "src": "16011:17:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 3439, + "id": 1419, "nodeType": "IfStatement", - "src": "16745:178:5", + "src": "16007:173:4", "trueBody": { - "id": 3438, + "id": 1418, "nodeType": "Block", - "src": "16767:156:5", + "src": "16030:150:4", "statements": [ { "expression": { "argumentTypes": null, - "id": 3436, + "id": 1416, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 3429, + "id": 1409, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "16871:6:5", + "referencedDeclaration": 1381, + "src": "16130:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27705,12 +27963,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3434, + "id": 1414, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "16903:6:5", + "referencedDeclaration": 1381, + "src": "16162:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27728,26 +27986,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3430, + "id": 1410, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "16880:6:5", + "referencedDeclaration": 543, + "src": "16139:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 3432, + "id": 1412, "indexExpression": { "argumentTypes": null, - "id": 3431, + "id": 1411, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3391, - "src": "16887:6:5", + "referencedDeclaration": 1371, + "src": "16146:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27758,27 +28016,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "16880:14:5", + "src": "16139:14:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 3433, + "id": 1413, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "getPrev", "nodeType": "MemberAccess", - "referencedDeclaration": 2286, - "src": "16880:22:5", + "referencedDeclaration": 185, + "src": "16139:22:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 3435, + "id": 1415, "isConstant": false, "isLValue": false, "isPure": false, @@ -27786,21 +28044,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16880:30:5", + "src": "16139:30:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "16871:39:5", + "src": "16130:39:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3437, + "id": 1417, "nodeType": "ExpressionStatement", - "src": "16871:39:5" + "src": "16130:39:4" } ] } @@ -27808,21 +28066,21 @@ { "expression": { "argumentTypes": null, - "id": 3440, + "id": 1420, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "16978:6:5", + "referencedDeclaration": 1381, + "src": "16231:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3399, - "id": 3441, + "functionReturnParameters": 1379, + "id": 1421, "nodeType": "Return", - "src": "16971:13:5" + "src": "16224:13:4" } ] } @@ -27830,19 +28088,19 @@ { "expression": { "argumentTypes": null, - "id": 3451, + "id": 1431, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 3444, + "id": 1424, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "17096:6:5", + "referencedDeclaration": 1381, + "src": "16343:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27855,12 +28113,12 @@ "arguments": [ { "argumentTypes": null, - "id": 3449, + "id": 1429, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "17128:6:5", + "referencedDeclaration": 1381, + "src": "16375:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27878,26 +28136,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 3445, + "id": 1425, "name": "dllMap", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2569, - "src": "17105:6:5", + "referencedDeclaration": 543, + "src": "16352:6:4", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$2180_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Data_$79_storage_$", "typeString": "mapping(address => struct DLL.Data storage ref)" } }, - "id": 3447, + "id": 1427, "indexExpression": { "argumentTypes": null, - "id": 3446, + "id": 1426, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3391, - "src": "17112:6:5", + "referencedDeclaration": 1371, + "src": "16359:6:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27908,27 +28166,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "17105:14:5", + "src": "16352:14:4", "typeDescriptions": { - "typeIdentifier": "t_struct$_Data_$2180_storage", + "typeIdentifier": "t_struct$_Data_$79_storage", "typeString": "struct DLL.Data storage ref" } }, - "id": 3448, + "id": 1428, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "getPrev", "nodeType": "MemberAccess", - "referencedDeclaration": 2286, - "src": "17105:22:5", + "referencedDeclaration": 185, + "src": "16352:22:4", "typeDescriptions": { - "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$2180_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$2180_storage_ptr_$", + "typeIdentifier": "t_function_delegatecall_view$_t_struct$_Data_$79_storage_ptr_$_t_uint256_$returns$_t_uint256_$bound_to$_t_struct$_Data_$79_storage_ptr_$", "typeString": "function (struct DLL.Data storage pointer,uint256) view returns (uint256)" } }, - "id": 3450, + "id": 1430, "isConstant": false, "isLValue": false, "isPure": false, @@ -27936,21 +28194,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "17105:30:5", + "src": "16352:30:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "17096:39:5", + "src": "16343:39:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 3452, + "id": 1432, "nodeType": "ExpressionStatement", - "src": "17096:39:5" + "src": "16343:39:4" } ] }, @@ -27960,19 +28218,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3415, + "id": 1395, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3413, + "id": 1393, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "16540:6:5", + "referencedDeclaration": 1381, + "src": "15809:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27983,14 +28241,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 3414, + "id": 1394, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "16550:1:5", + "src": "15819:1:4", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -27998,39 +28256,39 @@ }, "value": "0" }, - "src": "16540:11:5", + "src": "15809:11:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 3454, + "id": 1434, "nodeType": "WhileStatement", - "src": "16534:610:5" + "src": "15802:587:4" }, { "expression": { "argumentTypes": null, - "id": 3455, + "id": 1435, "name": "nodeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3401, - "src": "17255:6:5", + "referencedDeclaration": 1381, + "src": "16496:6:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3399, - "id": 3456, + "functionReturnParameters": 1379, + "id": 1436, "nodeType": "Return", - "src": "17248:13:5" + "src": "16489:13:4" } ] }, "documentation": null, - "id": 3458, + "id": 1438, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -28038,16 +28296,16 @@ "name": "getInsertPointForNumTokens", "nodeType": "FunctionDefinition", "parameters": { - "id": 3396, + "id": 1376, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3391, + "id": 1371, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 3458, - "src": "16187:14:5", + "scope": 1438, + "src": "15469:14:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28055,10 +28313,10 @@ "typeString": "address" }, "typeName": { - "id": 3390, + "id": 1370, "name": "address", "nodeType": "ElementaryTypeName", - "src": "16187:7:5", + "src": "15469:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28069,11 +28327,11 @@ }, { "constant": false, - "id": 3393, + "id": 1373, "name": "_numTokens", "nodeType": "VariableDeclaration", - "scope": 3458, - "src": "16203:15:5", + "scope": 1438, + "src": "15485:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28081,10 +28339,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3392, + "id": 1372, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "16203:4:5", + "src": "15485:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28095,11 +28353,11 @@ }, { "constant": false, - "id": 3395, + "id": 1375, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3458, - "src": "16220:12:5", + "scope": 1438, + "src": "15502:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28107,10 +28365,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3394, + "id": 1374, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "16220:4:5", + "src": "15502:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28120,20 +28378,20 @@ "visibility": "internal" } ], - "src": "16186:47:5" + "src": "15468:47:4" }, "payable": false, "returnParameters": { - "id": 3399, + "id": 1379, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3398, + "id": 1378, "name": "prevNode", "nodeType": "VariableDeclaration", - "scope": 3458, - "src": "16263:13:5", + "scope": 1438, + "src": "15539:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28141,10 +28399,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3397, + "id": 1377, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "16263:4:5", + "src": "15539:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28154,19 +28412,19 @@ "visibility": "internal" } ], - "src": "16262:15:5" + "src": "15538:15:4" }, - "scope": 3488, - "src": "16151:1117:5", + "scope": 1471, + "src": "15433:1074:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3471, + "id": 1451, "nodeType": "Block", - "src": "17667:60:5", + "src": "16884:54:4", "statements": [ { "expression": { @@ -28178,7 +28436,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3468, + "id": 1448, "isConstant": false, "isLValue": false, "isPure": false, @@ -28187,18 +28445,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 3465, + "id": 1445, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3882, - "src": "17685:5:5", + "referencedDeclaration": 3692, + "src": "16898:5:4", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 3466, + "id": 1446, "isConstant": false, "isLValue": false, "isPure": false, @@ -28206,7 +28464,7 @@ "memberName": "timestamp", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "17685:15:5", + "src": "16898:15:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28216,46 +28474,46 @@ "operator": ">", "rightExpression": { "argumentTypes": null, - "id": 3467, + "id": 1447, "name": "_terminationDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3460, - "src": "17703:16:5", + "referencedDeclaration": 1440, + "src": "16916:16:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "17685:34:5", + "src": "16898:34:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 3469, + "id": 1449, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "17684:36:5", + "src": "16897:36:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 3464, - "id": 3470, + "functionReturnParameters": 1444, + "id": 1450, "nodeType": "Return", - "src": "17677:43:5" + "src": "16890:43:4" } ] }, "documentation": "@dev Checks if an expiration date has been reached\n@param _terminationDate Integer timestamp of date to compare current timestamp with\n@return expired Boolean indication of whether the terminationDate has passed", - "id": 3472, + "id": 1452, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -28263,16 +28521,16 @@ "name": "isExpired", "nodeType": "FunctionDefinition", "parameters": { - "id": 3461, + "id": 1441, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3460, + "id": 1440, "name": "_terminationDate", "nodeType": "VariableDeclaration", - "scope": 3472, - "src": "17605:21:5", + "scope": 1452, + "src": "16826:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28280,10 +28538,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3459, + "id": 1439, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "17605:4:5", + "src": "16826:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28293,20 +28551,20 @@ "visibility": "internal" } ], - "src": "17604:23:5" + "src": "16825:23:4" }, "payable": false, "returnParameters": { - "id": 3464, + "id": 1444, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3463, + "id": 1443, "name": "expired", "nodeType": "VariableDeclaration", - "scope": 3472, - "src": "17653:12:5", + "scope": 1452, + "src": "16870:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28314,10 +28572,10 @@ "typeString": "bool" }, "typeName": { - "id": 3462, + "id": 1442, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "17653:4:5", + "src": "16870:4:4", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -28327,19 +28585,19 @@ "visibility": "internal" } ], - "src": "17652:14:5" + "src": "16869:14:4" }, - "scope": 3488, - "src": "17586:141:5", + "scope": 1471, + "src": "16807:131:4", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 3486, + "id": 1469, "nodeType": "Block", - "src": "18041:49:5", + "src": "17240:61:4", "statements": [ { "expression": { @@ -28347,54 +28605,106 @@ "arguments": [ { "argumentTypes": null, - "id": 3482, - "name": "_user", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3474, - "src": "18068:5:5", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "id": 3483, - "name": "_pollID", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3476, - "src": "18075:7:5", + "arguments": [ + { + "argumentTypes": null, + "id": 1464, + "name": "_user", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1454, + "src": "17280:5:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1465, + "name": "_pollID", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1456, + "src": "17287:7:4", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1462, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "17263:3:4", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1463, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "17263:16:4", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "17263:32:4", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 3481, + "id": 1461, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "18058:9:5", + "referencedDeclaration": 3696, + "src": "17253:9:4", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 3484, + "id": 1467, "isConstant": false, "isLValue": false, "isPure": false, @@ -28402,21 +28712,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "18058:25:5", + "src": "17253:43:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "functionReturnParameters": 3480, - "id": 3485, + "functionReturnParameters": 1460, + "id": 1468, "nodeType": "Return", - "src": "18051:32:5" + "src": "17246:50:4" } ] }, "documentation": "@dev Generates an identifier which associates a user and a poll together\n@param _pollID Integer identifier associated with target poll\n@return UUID Hash which is deterministic from _user and _pollID", - "id": 3487, + "id": 1470, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -28424,16 +28734,16 @@ "name": "attrUUID", "nodeType": "FunctionDefinition", "parameters": { - "id": 3477, + "id": 1457, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3474, + "id": 1454, "name": "_user", "nodeType": "VariableDeclaration", - "scope": 3487, - "src": "17977:13:5", + "scope": 1470, + "src": "17176:13:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28441,10 +28751,10 @@ "typeString": "address" }, "typeName": { - "id": 3473, + "id": 1453, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17977:7:5", + "src": "17176:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28455,11 +28765,11 @@ }, { "constant": false, - "id": 3476, + "id": 1456, "name": "_pollID", "nodeType": "VariableDeclaration", - "scope": 3487, - "src": "17992:12:5", + "scope": 1470, + "src": "17191:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28467,10 +28777,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3475, + "id": 1455, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "17992:4:5", + "src": "17191:4:4", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28480,20 +28790,20 @@ "visibility": "internal" } ], - "src": "17976:29:5" + "src": "17175:29:4" }, "payable": false, "returnParameters": { - "id": 3480, + "id": 1460, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3479, + "id": 1459, "name": "UUID", "nodeType": "VariableDeclaration", - "scope": 3487, - "src": "18027:12:5", + "scope": 1470, + "src": "17226:12:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28501,10 +28811,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 3478, + "id": 1458, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "18027:7:5", + "src": "17226:7:4", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -28514,20 +28824,20 @@ "visibility": "internal" } ], - "src": "18026:14:5" + "src": "17225:14:4" }, - "scope": 3488, - "src": "17959:131:5", + "scope": 1471, + "src": "17158:143:4", "stateMutability": "pure", "superFunction": null, "visibility": "public" } ], - "scope": 3489, - "src": "292:17800:5" + "scope": 1472, + "src": "252:17051:4" } ], - "src": "0:18093:5" + "src": "0:17304:4" }, "compiler": { "name": "solc", @@ -28535,5 +28845,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-06-20T22:39:18.151Z" + "updatedAt": "2018-06-21T22:48:42.356Z" } \ No newline at end of file diff --git a/build/contracts/Parameterizer.json b/build/contracts/Parameterizer.json index 904f4db..f81413b 100644 --- a/build/contracts/Parameterizer.json +++ b/build/contracts/Parameterizer.json @@ -602,62 +602,62 @@ "type": "function" } ], - "bytecode": "0x608060405262093a806005553480156200001857600080fd5b506040516101c0806200398083398101806040528101908080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291905050508d600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508c600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620001916040805190810160405280600a81526020017f6d696e4465706f736974000000000000000000000000000000000000000000008152508d62000515640100000000026401000000009004565b620001e16040805190810160405280600b81526020017f704d696e4465706f7369740000000000000000000000000000000000000000008152508c62000515640100000000026401000000009004565b620002316040805190810160405280600d81526020017f6170706c7953746167654c656e000000000000000000000000000000000000008152508b62000515640100000000026401000000009004565b620002816040805190810160405280600e81526020017f704170706c7953746167654c656e0000000000000000000000000000000000008152508a62000515640100000000026401000000009004565b620002d16040805190810160405280600e81526020017f636f6d6d697453746167654c656e0000000000000000000000000000000000008152508962000515640100000000026401000000009004565b620003216040805190810160405280600f81526020017f70436f6d6d697453746167654c656e00000000000000000000000000000000008152508862000515640100000000026401000000009004565b620003716040805190810160405280600e81526020017f72657665616c53746167654c656e0000000000000000000000000000000000008152508762000515640100000000026401000000009004565b620003c16040805190810160405280600f81526020017f7052657665616c53746167654c656e00000000000000000000000000000000008152508662000515640100000000026401000000009004565b620004116040805190810160405280600f81526020017f64697370656e736174696f6e50637400000000000000000000000000000000008152508562000515640100000000026401000000009004565b620004616040805190810160405280601081526020017f7044697370656e736174696f6e506374000000000000000000000000000000008152508462000515640100000000026401000000009004565b620004b16040805190810160405280600a81526020017f766f746551756f72756d000000000000000000000000000000000000000000008152508362000515640100000000026401000000009004565b620005016040805190810160405280600b81526020017f70566f746551756f72756d0000000000000000000000000000000000000000008152508262000515640100000000026401000000009004565b50505050505050505050505050506200059c565b80600080846040518082805190602001908083835b6020831015156200055157805182526020820191506020810190506020830392506200052a565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020819055505050565b6133d480620005ac6000396000f3006080604052600436106100f0576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806229514f146100f557806330490e911461012057806332ed5b12146101515780633530099014610251578063504115521461029a578063693ec85e146102db57806377609a41146103585780638240ae4b146103a157806386bb8f37146103e65780638f1d37761461041d578063a5ba3b1e146104aa578063a7aad3db1461050f578063bade1c541461057a578063c51131fb14610609578063dc6ab52714610652578063fc0c546a14610697578063fce1ccca146106ee575b600080fd5b34801561010157600080fd5b5061010a610745565b6040518082815260200191505060405180910390f35b34801561012c57600080fd5b5061014f600480360381019080803560001916906020019092919050505061074b565b005b34801561015d57600080fd5b506101806004803603810190808035600019169060200190929190505050610eb4565b60405180888152602001878152602001868152602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848152602001838152602001828103825286818151815260200191508051906020019080838360005b838110156102105780820151818401526020810190506101f5565b50505050905090810190601f16801561023d5780820380516001836020036101000a031916815260200191505b509850505050505050505060405180910390f35b34801561025d57600080fd5b506102806004803603810190808035600019169060200190929190505050610fae565b604051808215151515815260200191505060405180910390f35b3480156102a657600080fd5b506102c560048036038101908080359060200190929190505050610fd8565b6040518082815260200191505060405180910390f35b3480156102e757600080fd5b50610342600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611108565b6040518082815260200191505060405180910390f35b34801561036457600080fd5b50610387600480360381019080803560001916906020019092919050505061118e565b604051808215151515815260200191505060405180910390f35b3480156103ad57600080fd5b506103d060048036038101908080356000191690602001909291905050506114a4565b6040518082815260200191505060405180910390f35b3480156103f257600080fd5b5061041b6004803603810190808035906020019092919080359060200190929190505050611be4565b005b34801561042957600080fd5b5061044860048036038101908080359060200190929190505050611fba565b604051808681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001841515151581526020018381526020018281526020019550505050505060405180910390f35b3480156104b657600080fd5b506104f560048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061201d565b604051808215151515815260200191505060405180910390f35b34801561051b57600080fd5b50610564600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190929190505050612088565b6040518082815260200191505060405180910390f35b34801561058657600080fd5b506105eb600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001909291905050506121e4565b60405180826000191660001916815260200191505060405180910390f35b34801561061557600080fd5b5061063860048036038101908080356000191690602001909291905050506128b5565b604051808215151515815260200191505060405180910390f35b34801561065e57600080fd5b506106816004803603810190808035600019169060200190929190505050612a40565b6040518082815260200191505060405180910390f35b3480156106a357600080fd5b506106ac612a58565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106fa57600080fd5b50610703612a7e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60055481565b600080600060026000856000191660001916815260200190815260200160002092508260040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150826002015490506107a4846128b5565b15610aad57610853836003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108445780601f1061081957610100808354040283529160200191610844565b820191906000526020600020905b81548152906001019060200180831161082757829003601f168201915b50505050508460060154612aa4565b83600019167f37f3986c71e1aa2c470cfc4a92af70820610c3065589d35ef1664ea27f3e73a584600301856006015460405180806020018381526020018281038252848181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156109115780601f106108e657610100808354040283529160200191610911565b820191906000526020600020905b8154815290600101906020018083116108f457829003601f168201915b5050935050505060405180910390a260026000856000191660001916815260200190815260200160002060008082016000905560018201600090556002820160009055600382016000610964919061321f565b6004820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600582016000905560068201600090555050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610a6257600080fd5b505af1158015610a76573d6000803e3d6000fd5b505050506040513d6020811015610a8c57600080fd5b81019080805190602001909291905050501515610aa857600080fd5b610c9a565b610ab68461118e565b15610ac957610ac484612b29565b610c99565b8260050154421115610c935783600019167f29026cb2acebe6d0a4b6d593ccadf76e3fc6d0a02254e078b0c4a619608089d760405160405180910390a260026000856000191660001916815260200190815260200160002060008082016000905560018201600090556002820160009055600382016000610b4a919061321f565b6004820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600582016000905560068201600090555050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610c4857600080fd5b505af1158015610c5c573d6000803e3d6000fd5b505050506040513d6020811015610c7257600080fd5b81019080805190602001909291905050501515610c8e57600080fd5b610c98565b600080fd5b5b5b6064610cda6040805190810160405280600f81526020017f64697370656e736174696f6e5063740000000000000000000000000000000000815250611108565b11151515610ce457fe5b6064610d246040805190810160405280601081526020017f7044697370656e736174696f6e50637400000000000000000000000000000000815250611108565b11151515610d2e57fe5b610e30600554610e22610d756040805190810160405280600f81526020017f7052657665616c53746167654c656e0000000000000000000000000000000000815250611108565b610e14610db66040805190810160405280600f81526020017f70436f6d6d697453746167654c656e0000000000000000000000000000000000815250611108565b610e06610df76040805190810160405280600e81526020017f704170706c7953746167654c656e000000000000000000000000000000000000815250611108565b4261319a90919063ffffffff16565b61319a90919063ffffffff16565b61319a90919063ffffffff16565b61319a90919063ffffffff16565b5060026000856000191660001916815260200190815260200160002060008082016000905560018201600090556002820160009055600382016000610e75919061321f565b6004820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560058201600090556006820160009055505050505050565b6002602052806000526040600020600091509050806000015490806001015490806002015490806003018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f725780601f10610f4757610100808354040283529160200191610f72565b820191906000526020600020905b815481529060010190602001808311610f5557829003601f168201915b5050505050908060040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060050154908060060154905087565b60008060026000846000191660001916815260200190815260200160002060050154119050919050565b600080600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a6846040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561106c57600080fd5b505af1158015611080573d6000803e3d6000fd5b505050506040513d602081101561109657600080fd5b810190808051906020019092919050505014156110ce5760016000838152602001908152602001600020600201546002029050611103565b600160008381526020019081526020016000206000015460016000848152602001908152602001600020600201546002020390505b919050565b6000806000836040518082805190602001908083835b602083101515611143578051825260208201915060208101905060208303925061111e565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000611198613267565b6111a06132bb565b60026000856000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561127e5780601f106112535761010080835404028352916020019161127e565b820191906000526020600020905b81548152906001019060200180831161126157829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600582015481526020016006820154815250509150600160008360200151815260200190815260200160002060a06040519081016040529081600082015481526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160149054906101000a900460ff16151515158152602001600282015481526020016003820154815250509050600082602001511180156113c357506000151581604001511515145b801561149b5750600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ee68483083602001516040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561145f57600080fd5b505af1158015611473573d6000803e3d6000fd5b505050506040513d602081101561148957600080fd5b81019080805190602001909291905050505b92505050919050565b60006114ae613267565b60008060008060026000886000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156115925780601f1061156757610100808354040283529160200191611592565b820191906000526020600020905b81548152906001019060200180831161157557829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016005820154815260200160068201548152505094508460400151935061161787610fae565b8015611627575060008560200151145b151561163257600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166332ed3d606116ae6040805190810160405280600b81526020017f70566f746551756f72756d000000000000000000000000000000000000000000815250611108565b6116ec6040805190810160405280600f81526020017f70436f6d6d697453746167654c656e0000000000000000000000000000000000815250611108565b61172a6040805190810160405280600f81526020017f7052657665616c53746167654c656e0000000000000000000000000000000000815250611108565b6040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018381526020018281526020019350505050602060405180830381600087803b15801561178a57600080fd5b505af115801561179e573d6000803e3d6000fd5b505050506040513d60208110156117b457600080fd5b8101908080519060200190929190505050925060a060405190810160405280611840606461183288611824606461181f6040805190810160405280601081526020017f7044697370656e736174696f6e50637400000000000000000000000000000000815250611108565b6131b8565b6131d190919063ffffffff16565b61320490919063ffffffff16565b81526020013373ffffffffffffffffffffffffffffffffffffffff1681526020016000151581526020018581526020016000815250600160008581526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010160146101000a81548160ff02191690831515021790555060608201518160020155608082015181600301559050508260026000896000191660001916815260200190815260200160002060010181905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330876040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015611a2c57600080fd5b505af1158015611a40573d6000803e3d6000fd5b505050506040513d6020811015611a5657600080fd5b81019080805190602001909291905050501515611a7257600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636148fed5846040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060a060405180830381600087803b158015611b0357600080fd5b505af1158015611b17573d6000803e3d6000fd5b505050506040513d60a0811015611b2d57600080fd5b81019080805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919050505090915090505080925081935050503373ffffffffffffffffffffffffffffffffffffffff1687600019167fe94e3086c4bfe84acba4437b85a80fca3721dfc419d1f7afe4fa4e470e670b4885858560405180848152602001838152602001828152602001935050505060405180910390a38295505050505050919050565b600080600015156001600086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515141515611c5a57600080fd5b600115156001600086815260200190815260200160002060010160149054906101000a900460ff161515141515611c9057600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0693386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b158015611d5d57600080fd5b505af1158015611d71573d6000803e3d6000fd5b505050506040513d6020811015611d8757600080fd5b81019080805190602001909291905050509150611da5338585612088565b9050816001600086815260200190815260200160002060030160008282540392505081905550806001600086815260200190815260200160002060000160008282540392505081905550600180600086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff16847f6f4c982acc31b0af2cf1dc1556f21c0325d893782d65e83c68a5534a33f59957836040518082815260200191505060405180910390a3600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611f6e57600080fd5b505af1158015611f82573d6000803e3d6000fd5b505050506040513d6020811015611f9857600080fd5b81019080805190602001909291905050501515611fb457600080fd5b50505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010160149054906101000a900460ff16908060020154908060030154905085565b60006001600084815260200190815260200160002060040160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000806000806001600087815260200190815260200160002060030154925060016000878152602001908152602001600020600001549150600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0698888886040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b15801561218d57600080fd5b505af11580156121a1573d6000803e3d6000fd5b505050506040513d60208110156121b757600080fd5b81019080805190602001909291905050509050828282028115156121d757fe5b0493505050509392505050565b60008060006122276040805190810160405280600b81526020017f704d696e4465706f736974000000000000000000000000000000000000000000815250611108565b915084846040518083805190602001908083835b602083101515612260578051825260208201915060208101905060208303925061223b565b6001836020036101000a038019825116818451168082178552505050505050905001828152602001925050506040518091039020905060405180807f64697370656e736174696f6e5063740000000000000000000000000000000000815250600f019050604051809103902060001916856040518082805190602001908083835b60208310151561230657805182526020820191506020810190506020830392506122e1565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191614806123e1575060405180807f7044697370656e736174696f6e506374000000000000000000000000000000008152506010019050604051809103902060001916856040518082805190602001908083835b6020831015156123ae5780518252602082019150602081019050602083039250612389565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916145b156123f757606484111515156123f657600080fd5b5b61240081610fae565b15151561240c57600080fd5b8361241686611108565b1415151561242357600080fd5b60e06040519081016040528061247f6124706040805190810160405280600e81526020017f704170706c7953746167654c656e000000000000000000000000000000000000815250611108565b4261319a90919063ffffffff16565b8152602001600081526020018381526020018681526020013373ffffffffffffffffffffffffffffffffffffffff1681526020016125b56005546125a76124fa6040805190810160405280600f81526020017f7052657665616c53746167654c656e0000000000000000000000000000000000815250611108565b61259961253b6040805190810160405280600f81526020017f70436f6d6d697453746167654c656e0000000000000000000000000000000000815250611108565b61258b61257c6040805190810160405280600e81526020017f704170706c7953746167654c656e000000000000000000000000000000000000815250611108565b4261319a90919063ffffffff16565b61319a90919063ffffffff16565b61319a90919063ffffffff16565b61319a90919063ffffffff16565b8152602001858152506002600083600019166000191681526020019081526020016000206000820151816000015560208201518160010155604082015181600201556060820151816003019080519060200190612613929190613303565b5060808201518160040160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060a0820151816005015560c08201518160060155905050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561276b57600080fd5b505af115801561277f573d6000803e3d6000fd5b505050506040513d602081101561279557600080fd5b810190808051906020019092919050505015156127b157600080fd5b3373ffffffffffffffffffffffffffffffffffffffff167fb25bdef16105f099e5c185f9c7fd969571e8e0caa3f7bd75409512fe0a41a60b868684866002600088600019166000191681526020019081526020016000206000015460405180806020018681526020018560001916600019168152602001848152602001838152602001828103825287818151815260200191508051906020019080838360005b8381101561286c578082015181840152602081019050612851565b50505050905090810190601f1680156128995780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a2809250505092915050565b60006128bf613267565b60026000846000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561299d5780601f106129725761010080835404028352916020019161299d565b820191906000526020600020905b81548152906001019060200180831161298057829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600582015481526020016006820154815250509050806000015142118015612a2857508060a0015142105b8015612a38575060008160200151145b915050919050565b60006020528060005260406000206000915090505481565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b80600080846040518082805190602001908083835b602083101515612ade5780518252602082019150602081019050602083039250612ab9565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020819055505050565b612b31613267565b60008060026000856000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612c125780601f10612be757610100808354040283529160200191612c12565b820191906000526020600020905b815481529060010190602001808311612bf557829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160058201548152602001600682015481525050925060016000846020015181526020019081526020016000209150612cad8360200151610fd8565b9050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a684602001516040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015612d4457600080fd5b505af1158015612d58573d6000803e3d6000fd5b505050506040513d6020811015612d6e57600080fd5b8101908080519060200190929190505050826003018190555060018260010160146101000a81548160ff021916908315150217905550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634940318384602001516040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015612e3957600080fd5b505af1158015612e4d573d6000803e3d6000fd5b505050506040513d6020811015612e6357600080fd5b810190808051906020019092919050505015612ffd57428360a001511115612e9857612e9783606001518460c00151612aa4565b5b826020015184600019167fc4497224aa78dd50c9b3e344aab02596201ca1e6dca4057a91a6c02f83f4f6c184600001548560030154604051808381526020018281526020019250505060405180910390a3600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8460800151836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015612fb257600080fd5b505af1158015612fc6573d6000803e3d6000fd5b505050506040513d6020811015612fdc57600080fd5b81019080805190602001909291905050501515612ff857600080fd5b613194565b826020015184600019167f362a12431f779a2baff4f77f75ba7960ae993a5c41b425df11f7fd0af2b9cbe684600001548560030154604051808381526020018281526020019250505060405180910390a3600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600160008660200151815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561314d57600080fd5b505af1158015613161573d6000803e3d6000fd5b505050506040513d602081101561317757600080fd5b8101908080519060200190929190505050151561319357600080fd5b5b50505050565b60008082840190508381101515156131ae57fe5b8091505092915050565b60008282111515156131c657fe5b818303905092915050565b600080828402905060008414806131f257508284828115156131ef57fe5b04145b15156131fa57fe5b8091505092915050565b600080828481151561321257fe5b0490508091505092915050565b50805460018160011615610100020316600290046000825580601f106132455750613264565b601f0160209004906000526020600020908101906132639190613383565b5b50565b60e06040519081016040528060008152602001600081526020016000815260200160608152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600081525090565b60a06040519081016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160001515815260200160008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061334457805160ff1916838001178555613372565b82800160010185558215613372579182015b82811115613371578251825591602001919060010190613356565b5b50905061337f9190613383565b5090565b6133a591905b808211156133a1576000816000905550600101613389565b5090565b905600a165627a7a7230582004ceef871309804ccd13df14246544b15f3f3df7ee857efac47b79d35ae20c1e0029", - "deployedBytecode": "0x6080604052600436106100f0576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806229514f146100f557806330490e911461012057806332ed5b12146101515780633530099014610251578063504115521461029a578063693ec85e146102db57806377609a41146103585780638240ae4b146103a157806386bb8f37146103e65780638f1d37761461041d578063a5ba3b1e146104aa578063a7aad3db1461050f578063bade1c541461057a578063c51131fb14610609578063dc6ab52714610652578063fc0c546a14610697578063fce1ccca146106ee575b600080fd5b34801561010157600080fd5b5061010a610745565b6040518082815260200191505060405180910390f35b34801561012c57600080fd5b5061014f600480360381019080803560001916906020019092919050505061074b565b005b34801561015d57600080fd5b506101806004803603810190808035600019169060200190929190505050610eb4565b60405180888152602001878152602001868152602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848152602001838152602001828103825286818151815260200191508051906020019080838360005b838110156102105780820151818401526020810190506101f5565b50505050905090810190601f16801561023d5780820380516001836020036101000a031916815260200191505b509850505050505050505060405180910390f35b34801561025d57600080fd5b506102806004803603810190808035600019169060200190929190505050610fae565b604051808215151515815260200191505060405180910390f35b3480156102a657600080fd5b506102c560048036038101908080359060200190929190505050610fd8565b6040518082815260200191505060405180910390f35b3480156102e757600080fd5b50610342600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611108565b6040518082815260200191505060405180910390f35b34801561036457600080fd5b50610387600480360381019080803560001916906020019092919050505061118e565b604051808215151515815260200191505060405180910390f35b3480156103ad57600080fd5b506103d060048036038101908080356000191690602001909291905050506114a4565b6040518082815260200191505060405180910390f35b3480156103f257600080fd5b5061041b6004803603810190808035906020019092919080359060200190929190505050611be4565b005b34801561042957600080fd5b5061044860048036038101908080359060200190929190505050611fba565b604051808681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001841515151581526020018381526020018281526020019550505050505060405180910390f35b3480156104b657600080fd5b506104f560048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061201d565b604051808215151515815260200191505060405180910390f35b34801561051b57600080fd5b50610564600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190929190505050612088565b6040518082815260200191505060405180910390f35b34801561058657600080fd5b506105eb600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001909291905050506121e4565b60405180826000191660001916815260200191505060405180910390f35b34801561061557600080fd5b5061063860048036038101908080356000191690602001909291905050506128b5565b604051808215151515815260200191505060405180910390f35b34801561065e57600080fd5b506106816004803603810190808035600019169060200190929190505050612a40565b6040518082815260200191505060405180910390f35b3480156106a357600080fd5b506106ac612a58565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106fa57600080fd5b50610703612a7e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60055481565b600080600060026000856000191660001916815260200190815260200160002092508260040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150826002015490506107a4846128b5565b15610aad57610853836003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108445780601f1061081957610100808354040283529160200191610844565b820191906000526020600020905b81548152906001019060200180831161082757829003601f168201915b50505050508460060154612aa4565b83600019167f37f3986c71e1aa2c470cfc4a92af70820610c3065589d35ef1664ea27f3e73a584600301856006015460405180806020018381526020018281038252848181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156109115780601f106108e657610100808354040283529160200191610911565b820191906000526020600020905b8154815290600101906020018083116108f457829003601f168201915b5050935050505060405180910390a260026000856000191660001916815260200190815260200160002060008082016000905560018201600090556002820160009055600382016000610964919061321f565b6004820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600582016000905560068201600090555050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610a6257600080fd5b505af1158015610a76573d6000803e3d6000fd5b505050506040513d6020811015610a8c57600080fd5b81019080805190602001909291905050501515610aa857600080fd5b610c9a565b610ab68461118e565b15610ac957610ac484612b29565b610c99565b8260050154421115610c935783600019167f29026cb2acebe6d0a4b6d593ccadf76e3fc6d0a02254e078b0c4a619608089d760405160405180910390a260026000856000191660001916815260200190815260200160002060008082016000905560018201600090556002820160009055600382016000610b4a919061321f565b6004820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600582016000905560068201600090555050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610c4857600080fd5b505af1158015610c5c573d6000803e3d6000fd5b505050506040513d6020811015610c7257600080fd5b81019080805190602001909291905050501515610c8e57600080fd5b610c98565b600080fd5b5b5b6064610cda6040805190810160405280600f81526020017f64697370656e736174696f6e5063740000000000000000000000000000000000815250611108565b11151515610ce457fe5b6064610d246040805190810160405280601081526020017f7044697370656e736174696f6e50637400000000000000000000000000000000815250611108565b11151515610d2e57fe5b610e30600554610e22610d756040805190810160405280600f81526020017f7052657665616c53746167654c656e0000000000000000000000000000000000815250611108565b610e14610db66040805190810160405280600f81526020017f70436f6d6d697453746167654c656e0000000000000000000000000000000000815250611108565b610e06610df76040805190810160405280600e81526020017f704170706c7953746167654c656e000000000000000000000000000000000000815250611108565b4261319a90919063ffffffff16565b61319a90919063ffffffff16565b61319a90919063ffffffff16565b61319a90919063ffffffff16565b5060026000856000191660001916815260200190815260200160002060008082016000905560018201600090556002820160009055600382016000610e75919061321f565b6004820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560058201600090556006820160009055505050505050565b6002602052806000526040600020600091509050806000015490806001015490806002015490806003018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f725780601f10610f4757610100808354040283529160200191610f72565b820191906000526020600020905b815481529060010190602001808311610f5557829003601f168201915b5050505050908060040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060050154908060060154905087565b60008060026000846000191660001916815260200190815260200160002060050154119050919050565b600080600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a6846040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561106c57600080fd5b505af1158015611080573d6000803e3d6000fd5b505050506040513d602081101561109657600080fd5b810190808051906020019092919050505014156110ce5760016000838152602001908152602001600020600201546002029050611103565b600160008381526020019081526020016000206000015460016000848152602001908152602001600020600201546002020390505b919050565b6000806000836040518082805190602001908083835b602083101515611143578051825260208201915060208101905060208303925061111e565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000611198613267565b6111a06132bb565b60026000856000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561127e5780601f106112535761010080835404028352916020019161127e565b820191906000526020600020905b81548152906001019060200180831161126157829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600582015481526020016006820154815250509150600160008360200151815260200190815260200160002060a06040519081016040529081600082015481526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160149054906101000a900460ff16151515158152602001600282015481526020016003820154815250509050600082602001511180156113c357506000151581604001511515145b801561149b5750600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ee68483083602001516040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561145f57600080fd5b505af1158015611473573d6000803e3d6000fd5b505050506040513d602081101561148957600080fd5b81019080805190602001909291905050505b92505050919050565b60006114ae613267565b60008060008060026000886000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156115925780601f1061156757610100808354040283529160200191611592565b820191906000526020600020905b81548152906001019060200180831161157557829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016005820154815260200160068201548152505094508460400151935061161787610fae565b8015611627575060008560200151145b151561163257600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166332ed3d606116ae6040805190810160405280600b81526020017f70566f746551756f72756d000000000000000000000000000000000000000000815250611108565b6116ec6040805190810160405280600f81526020017f70436f6d6d697453746167654c656e0000000000000000000000000000000000815250611108565b61172a6040805190810160405280600f81526020017f7052657665616c53746167654c656e0000000000000000000000000000000000815250611108565b6040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018381526020018281526020019350505050602060405180830381600087803b15801561178a57600080fd5b505af115801561179e573d6000803e3d6000fd5b505050506040513d60208110156117b457600080fd5b8101908080519060200190929190505050925060a060405190810160405280611840606461183288611824606461181f6040805190810160405280601081526020017f7044697370656e736174696f6e50637400000000000000000000000000000000815250611108565b6131b8565b6131d190919063ffffffff16565b61320490919063ffffffff16565b81526020013373ffffffffffffffffffffffffffffffffffffffff1681526020016000151581526020018581526020016000815250600160008581526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010160146101000a81548160ff02191690831515021790555060608201518160020155608082015181600301559050508260026000896000191660001916815260200190815260200160002060010181905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330876040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015611a2c57600080fd5b505af1158015611a40573d6000803e3d6000fd5b505050506040513d6020811015611a5657600080fd5b81019080805190602001909291905050501515611a7257600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636148fed5846040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060a060405180830381600087803b158015611b0357600080fd5b505af1158015611b17573d6000803e3d6000fd5b505050506040513d60a0811015611b2d57600080fd5b81019080805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919050505090915090505080925081935050503373ffffffffffffffffffffffffffffffffffffffff1687600019167fe94e3086c4bfe84acba4437b85a80fca3721dfc419d1f7afe4fa4e470e670b4885858560405180848152602001838152602001828152602001935050505060405180910390a38295505050505050919050565b600080600015156001600086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515141515611c5a57600080fd5b600115156001600086815260200190815260200160002060010160149054906101000a900460ff161515141515611c9057600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0693386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b158015611d5d57600080fd5b505af1158015611d71573d6000803e3d6000fd5b505050506040513d6020811015611d8757600080fd5b81019080805190602001909291905050509150611da5338585612088565b9050816001600086815260200190815260200160002060030160008282540392505081905550806001600086815260200190815260200160002060000160008282540392505081905550600180600086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff16847f6f4c982acc31b0af2cf1dc1556f21c0325d893782d65e83c68a5534a33f59957836040518082815260200191505060405180910390a3600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611f6e57600080fd5b505af1158015611f82573d6000803e3d6000fd5b505050506040513d6020811015611f9857600080fd5b81019080805190602001909291905050501515611fb457600080fd5b50505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010160149054906101000a900460ff16908060020154908060030154905085565b60006001600084815260200190815260200160002060040160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000806000806001600087815260200190815260200160002060030154925060016000878152602001908152602001600020600001549150600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0698888886040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b15801561218d57600080fd5b505af11580156121a1573d6000803e3d6000fd5b505050506040513d60208110156121b757600080fd5b81019080805190602001909291905050509050828282028115156121d757fe5b0493505050509392505050565b60008060006122276040805190810160405280600b81526020017f704d696e4465706f736974000000000000000000000000000000000000000000815250611108565b915084846040518083805190602001908083835b602083101515612260578051825260208201915060208101905060208303925061223b565b6001836020036101000a038019825116818451168082178552505050505050905001828152602001925050506040518091039020905060405180807f64697370656e736174696f6e5063740000000000000000000000000000000000815250600f019050604051809103902060001916856040518082805190602001908083835b60208310151561230657805182526020820191506020810190506020830392506122e1565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405180910390206000191614806123e1575060405180807f7044697370656e736174696f6e506374000000000000000000000000000000008152506010019050604051809103902060001916856040518082805190602001908083835b6020831015156123ae5780518252602082019150602081019050602083039250612389565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916145b156123f757606484111515156123f657600080fd5b5b61240081610fae565b15151561240c57600080fd5b8361241686611108565b1415151561242357600080fd5b60e06040519081016040528061247f6124706040805190810160405280600e81526020017f704170706c7953746167654c656e000000000000000000000000000000000000815250611108565b4261319a90919063ffffffff16565b8152602001600081526020018381526020018681526020013373ffffffffffffffffffffffffffffffffffffffff1681526020016125b56005546125a76124fa6040805190810160405280600f81526020017f7052657665616c53746167654c656e0000000000000000000000000000000000815250611108565b61259961253b6040805190810160405280600f81526020017f70436f6d6d697453746167654c656e0000000000000000000000000000000000815250611108565b61258b61257c6040805190810160405280600e81526020017f704170706c7953746167654c656e000000000000000000000000000000000000815250611108565b4261319a90919063ffffffff16565b61319a90919063ffffffff16565b61319a90919063ffffffff16565b61319a90919063ffffffff16565b8152602001858152506002600083600019166000191681526020019081526020016000206000820151816000015560208201518160010155604082015181600201556060820151816003019080519060200190612613929190613303565b5060808201518160040160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060a0820151816005015560c08201518160060155905050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561276b57600080fd5b505af115801561277f573d6000803e3d6000fd5b505050506040513d602081101561279557600080fd5b810190808051906020019092919050505015156127b157600080fd5b3373ffffffffffffffffffffffffffffffffffffffff167fb25bdef16105f099e5c185f9c7fd969571e8e0caa3f7bd75409512fe0a41a60b868684866002600088600019166000191681526020019081526020016000206000015460405180806020018681526020018560001916600019168152602001848152602001838152602001828103825287818151815260200191508051906020019080838360005b8381101561286c578082015181840152602081019050612851565b50505050905090810190601f1680156128995780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a2809250505092915050565b60006128bf613267565b60026000846000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561299d5780601f106129725761010080835404028352916020019161299d565b820191906000526020600020905b81548152906001019060200180831161298057829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600582015481526020016006820154815250509050806000015142118015612a2857508060a0015142105b8015612a38575060008160200151145b915050919050565b60006020528060005260406000206000915090505481565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b80600080846040518082805190602001908083835b602083101515612ade5780518252602082019150602081019050602083039250612ab9565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020819055505050565b612b31613267565b60008060026000856000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612c125780601f10612be757610100808354040283529160200191612c12565b820191906000526020600020905b815481529060010190602001808311612bf557829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160058201548152602001600682015481525050925060016000846020015181526020019081526020016000209150612cad8360200151610fd8565b9050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a684602001516040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015612d4457600080fd5b505af1158015612d58573d6000803e3d6000fd5b505050506040513d6020811015612d6e57600080fd5b8101908080519060200190929190505050826003018190555060018260010160146101000a81548160ff021916908315150217905550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634940318384602001516040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015612e3957600080fd5b505af1158015612e4d573d6000803e3d6000fd5b505050506040513d6020811015612e6357600080fd5b810190808051906020019092919050505015612ffd57428360a001511115612e9857612e9783606001518460c00151612aa4565b5b826020015184600019167fc4497224aa78dd50c9b3e344aab02596201ca1e6dca4057a91a6c02f83f4f6c184600001548560030154604051808381526020018281526020019250505060405180910390a3600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8460800151836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015612fb257600080fd5b505af1158015612fc6573d6000803e3d6000fd5b505050506040513d6020811015612fdc57600080fd5b81019080805190602001909291905050501515612ff857600080fd5b613194565b826020015184600019167f362a12431f779a2baff4f77f75ba7960ae993a5c41b425df11f7fd0af2b9cbe684600001548560030154604051808381526020018281526020019250505060405180910390a3600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600160008660200151815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561314d57600080fd5b505af1158015613161573d6000803e3d6000fd5b505050506040513d602081101561317757600080fd5b8101908080519060200190929190505050151561319357600080fd5b5b50505050565b60008082840190508381101515156131ae57fe5b8091505092915050565b60008282111515156131c657fe5b818303905092915050565b600080828402905060008414806131f257508284828115156131ef57fe5b04145b15156131fa57fe5b8091505092915050565b600080828481151561321257fe5b0490508091505092915050565b50805460018160011615610100020316600290046000825580601f106132455750613264565b601f0160209004906000526020600020908101906132639190613383565b5b50565b60e06040519081016040528060008152602001600081526020016000815260200160608152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600081525090565b60a06040519081016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160001515815260200160008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061334457805160ff1916838001178555613372565b82800160010185558215613372579182015b82811115613371578251825591602001919060010190613356565b5b50905061337f9190613383565b5090565b6133a591905b808211156133a1576000816000905550600101613389565b5090565b905600a165627a7a7230582004ceef871309804ccd13df14246544b15f3f3df7ee857efac47b79d35ae20c1e0029", - "sourceMap": "142:14370:1:-;;;2014:6;1990:30;;3266:977;8:9:-1;5:2;;;30:1;27;20:12;5:2;3266:977:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3682:10;3659:5;;:34;;;;;;;;;;;;;;;;;;3719:9;3699:6;;:30;;;;;;;;;;;;;;;;;;3736;;;;;;;;;;;;;;;;;;;3754:11;3736:3;;;:30;;;:::i;:::-;3772:32;;;;;;;;;;;;;;;;;;;3791:12;3772:3;;;:32;;;:::i;:::-;3810:36;;;;;;;;;;;;;;;;;;;3831:14;3810:3;;;:36;;;:::i;:::-;3852:38;;;;;;;;;;;;;;;;;;;3874:15;3852:3;;;:38;;;:::i;:::-;3896;;;;;;;;;;;;;;;;;;;3918:15;3896:3;;;:38;;;:::i;:::-;3940:40;;;;;;;;;;;;;;;;;;;3963:16;3940:3;;;:40;;;:::i;:::-;3986:38;;;;;;;;;;;;;;;;;;;4008:15;3986:3;;;:38;;;:::i;:::-;4030:40;;;;;;;;;;;;;;;;;;;4053:16;4030:3;;;:40;;;:::i;:::-;4076;;;;;;;;;;;;;;;;;;;4099:16;4076:3;;;:40;;;:::i;:::-;4122:42;;;;;;;;;;;;;;;;;;;4146:17;4122:3;;;:42;;;:::i;:::-;4170:30;;;;;;;;;;;;;;;;;;;4188:11;4170:3;;;:30;;;:::i;:::-;4206:32;;;;;;;;;;;;;;;;;;;4225:12;4206:3;;;:32;;;:::i;:::-;3266:977;;;;;;;;;;;;;;142:14370;;14418:92;14499:6;14472;:24;14489:5;14479:16;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;14479:16:1;;;;;;;;;;;;;;;;14472:24;;;;;;;;;;;;;;;;;:33;;;;14418:92;;:::o;142:14370::-;;;;;;;", - "deployedSourceMap": "142:14370:1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1990:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1990:30:1;;;;;;;;;;;;;;;;;;;;;;;7087:1608;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7087:1608:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1854:50;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1854:50:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1854:50:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11223:114;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11223:114:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11973:370;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11973:370:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12499:102;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12499:102:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11504:301;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11504:301:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5766:1026;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5766:1026:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8920:903;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8920:903:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1748:44;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1748:44:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12816:145;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12816:145:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10279:363;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10279:363:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4538:1087;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4538:1087:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10859:204;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10859:204:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1653:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1653:38:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1931:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1931:27:1;;;;;;;;;;;;;;;;;;;;;;;;;;;1962:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1962:24:1;;;;;;;;;;;;;;;;;;;;;;;;;;;1990:30;;;;:::o;7087:1608::-;7142:26;7195:17;7231:16;7171:9;:18;7181:7;7171:18;;;;;;;;;;;;;;;;;7142:47;;7215:4;:10;;;;;;;;;;;;7195:30;;7250:4;:12;;;7231:31;;7443:17;7452:7;7443:8;:17::i;:::-;7439:920;;;7631:26;7635:4;:9;;7631:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7646:4;:10;;;7631:3;:26::i;:::-;7688:7;7670:49;;;;7697:4;:9;;7708:4;:10;;;7670:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7734:9;:18;7744:7;7734:18;;;;;;;;;;;;;;;;;;7727:25;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7768:5;;;;;;;;;;;:14;;;7783:9;7794:11;7768:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7768:38:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7768:38:1;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7768:38:1;;;;;;;;;;;;;;;;7760:47;;;;;;;;7439:920;;;7824:31;7847:7;7824:22;:31::i;:::-;7820:539;;;7917:25;7934:7;7917:16;:25::i;:::-;7820:539;;;7965:4;:14;;;7959:3;:20;7955:404;;;8099:7;8082:25;;;;;;;;;;;;;8122:9;:18;8132:7;8122:18;;;;;;;;;;;;;;;;;;8115:25;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8156:5;;;;;;;;;;;:14;;;8171:9;8182:11;8156:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8156:38:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8156:38:1;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8156:38:1;;;;;;;;;;;;;;;;8148:47;;;;;;;;7955:404;;;8344:8;;;7955:404;7820:539;7439:920;8398:3;8372:22;;;;;;;;;;;;;;;;;;;:3;:22::i;:::-;:29;;8365:37;;;;;;8442:3;8415:23;;;;;;;;;;;;;;;;;;;:3;:23::i;:::-;:30;;8408:38;;;;;;8536:122;8648:9;;8536:100;8613:22;;;;;;;;;;;;;;;;;;;:3;:22::i;:::-;8536:65;8578:22;;;;;;;;;;;;;;;;;;;:3;:22::i;:::-;8536:30;8544:21;;;;;;;;;;;;;;;;;;;:3;:21::i;:::-;8536:3;:7;;:30;;;;:::i;:::-;:41;;:65;;;;:::i;:::-;:76;;:100;;;;:::i;:::-;:111;;:122;;;;:::i;:::-;;8672:9;:18;8682:7;8672:18;;;;;;;;;;;;;;;;;;8665:25;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7087:1608;;;;:::o;1854:50::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;11223:114::-;11281:4;11331:1;11300:9;:18;11310:7;11300:18;;;;;;;;;;;;;;;;;:28;;;:32;11293:39;;11223:114;;;:::o;11973:370::-;12044:4;12123:1;12060:6;;;;;;;;;;;:45;;;12106:12;12060:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12060:59:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12060:59:1;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12060:59:1;;;;;;;;;;;;;;;;:64;12056:195;;;12214:10;:24;12225:12;12214:24;;;;;;;;;;;:30;;;12210:1;:34;12203:41;;;;12056:195;12303:10;:24;12314:12;12303:24;;;;;;;;;;;:35;;;12269:10;:24;12280:12;12269:24;;;;;;;;;;;:30;;;12265:1;:34;12264:74;12257:81;;11973:370;;;;:::o;12499:102::-;12547:10;12572:6;:24;12589:5;12579:16;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;12579:16:1;;;;;;;;;;;;;;;;12572:24;;;;;;;;;;;;;;;;;;12565:31;;12499:102;;;:::o;11504:301::-;11574:4;11586:25;;:::i;:::-;11638:26;;:::i;:::-;11614:9;:18;11624:7;11614:18;;;;;;;;;;;;;;;;;11586:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11667:10;:28;11678:4;:16;;;11667:28;;;;;;;;;;;11638:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11729:1;11710:4;:16;;;:20;:51;;;;;11756:5;11734:27;;:9;:18;;;:27;;;11710:51;:89;;;;;11765:6;;;;;;;;;;;:16;;;11782:4;:16;;;11765:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11765:34:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11765:34:1;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11765:34:1;;;;;;;;;;;;;;;;11710:89;11702:98;;11504:301;;;;;:::o;5766:1026::-;5836:16;5860:25;;:::i;:::-;5912:12;6023:11;6576:18;6600;5888:9;:18;5898:7;5888:18;;;;;;;;;;;;;;;;;5860:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5927:4;:12;;;5912:27;;5954:19;5965:7;5954:10;:19::i;:::-;:44;;;;;5997:1;5977:4;:16;;;:21;5954:44;5946:53;;;;;;;;6037:6;;;;;;;;;;;:16;;;6061:18;;;;;;;;;;;;;;;;;;;:3;:18::i;:::-;6087:22;;;;;;;;;;;;;;;;;;;:3;:22::i;:::-;6117;;;;;;;;;;;;;;;;;;;:3;:22::i;:::-;6037:108;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6037:108:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6037:108:1;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6037:108:1;;;;;;;;;;;;;;;;6023:122;;6173:200;;;;;;;;;6233:64;6293:3;6233:55;6280:7;6233:42;6246:3;6251:23;;;;;;;;;;;;;;;;;;;:3;:23::i;:::-;6233:12;:42::i;:::-;:46;;:55;;;;:::i;:::-;:59;;:64;;;;:::i;:::-;6173:200;;;;6203:10;6173:200;;;;;;6337:5;6173:200;;;;;;6312:7;6173:200;;;;6365:1;6173:200;;;6152:10;:18;6163:6;6152:18;;;;;;;;;;;:221;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6413:6;6380:9;:18;6390:7;6380:18;;;;;;;;;;;;;;;;;:30;;:39;;;;6523:5;;;;;;;;;;;:18;;;6542:10;6554:4;6560:7;6523:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6523:45:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6523:45:1;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6523:45:1;;;;;;;;;;;;;;;;6515:54;;;;;;;;6658:6;;;;;;;;;;;:14;;;6673:6;6658:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6658:22:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6658:22:1;;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;6658:22:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6624:56;;;;;;;;;;;;;;6757:10;6696:72;;6710:7;6696:72;;;;6719:6;6727:13;6742;6696:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6781:6;6774:13;;5766:1026;;;;;;;;:::o;8920:903::-;9207:16;9291:11;9138:5;9086:57;;:10;:24;9097:12;9086:24;;;;;;;;;;;:36;;:48;9123:10;9086:48;;;;;;;;;;;;;;;;;;;;;;;;;:57;;;9078:66;;;;;;;;9195:4;9158:41;;:10;:24;9169:12;9158:24;;;;;;;;;;;:33;;;;;;;;;;;;:41;;;9150:50;;;;;;;;9226:6;;;;;;;;;;;:26;;;9253:10;9265:12;9279:5;9226:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9226:59:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9226:59:1;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9226:59:1;;;;;;;;;;;;;;;;9207:78;;9305:44;9317:10;9329:12;9343:5;9305:11;:44::i;:::-;9291:58;;9536:11;9494:10;:24;9505:12;9494:24;;;;;;;;;;;:38;;;:53;;;;;;;;;;;9592:6;9553:10;:24;9564:12;9553:24;;;;;;;;;;;:35;;;:45;;;;;;;;;;;9705:4;9654:10;:24;9665:12;9654:24;;;;;;;;;;;:36;;:48;9691:10;9654:48;;;;;;;;;;;;;;;;:55;;;;;;;;;;;;;;;;;;9758:10;9721:48;;9736:12;9721:48;9750:6;9721:48;;;;;;;;;;;;;;;;;;9783:5;;;;;;;;;;;:14;;;9798:10;9810:6;9783:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9783:34:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9783:34:1;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9783:34:1;;;;;;;;;;;;;;;;9775:43;;;;;;;;8920:903;;;;:::o;1748:44::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;12816:145::-;12893:4;12912:10;:24;12923:12;12912:24;;;;;;;;;;;:36;;:44;12949:6;12912:44;;;;;;;;;;;;;;;;;;;;;;;;;12905:51;;12816:145;;;;:::o;10279:363::-;10370:4;10384:18;10449:15;10508:16;10405:10;:24;10416:12;10405:24;;;;;;;;;;;:38;;;10384:59;;10467:10;:24;10478:12;10467:24;;;;;;;;;;;:35;;;10449:53;;10527:6;;;;;;;;;;;:26;;;10554:6;10562:12;10576:5;10527:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10527:55:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10527:55:1;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10527:55:1;;;;;;;;;;;;;;;;10508:74;;10624:13;10610:10;10596:11;:24;10595:42;;;;;;;;10588:49;;10279:363;;;;;;;;:::o;4538:1087::-;4616:7;4631:12;4670:14;4646:18;;;;;;;;;;;;;;;;;;;:3;:18::i;:::-;4631:33;;4697:5;4704:6;4687:24;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4687:24:1;;;;;;;;;;;;;;;;;;;;;;4670:41;;4742:28;;;;;;;;;;;;;;;;;;;4722:48;;;4732:5;4722:16;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4722:16:1;;;;;;;;;;;;;;;;:48;;;;:108;;;;4801:29;;;;;;;;;;;;;;;;;;;4781:49;;;4791:5;4781:16;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4781:16:1;;;;;;;;;;;;;;;;:49;;;;4722:108;4718:151;;;4858:3;4848:6;:13;;4840:22;;;;;;;;4718:151;4884:18;4895:6;4884:10;:18::i;:::-;4883:19;4875:28;;;;;;;;4961:6;4947:10;4951:5;4947:3;:10::i;:::-;:20;;4939:29;;;;;;;;5069:328;;;;;;;;;5102:30;5110:21;;;;;;;;;;;;;;;;;;;:3;:21::i;:::-;5102:3;:7;;:30;;;;:::i;:::-;5069:328;;;;5153:1;5069:328;;;;5171:7;5069:328;;;;5192:5;5069:328;;;;5212:10;5069:328;;;;;;5241:128;5359:9;;5241:104;5322:22;;;;;;;;;;;;;;;;;;;:3;:22::i;:::-;5241:67;5285:22;;;;;;;;;;;;;;;;;;;:3;:22::i;:::-;5241:30;5249:21;;;;;;;;;;;;;;;;;;;:3;:21::i;:::-;5241:3;:7;;:30;;;;:::i;:::-;:43;;:67;;;;:::i;:::-;:80;;:104;;;;:::i;:::-;:117;;:128;;;;:::i;:::-;5069:328;;;;5384:6;5069:328;;;5049:9;:17;5059:6;5049:17;;;;;;;;;;;;;;;;;:348;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5412:5;;;;;;;;;;;:18;;;5431:10;5443:4;5449:7;5412:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5412:45:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5412:45:1;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5412:45:1;;;;;;;;;;;;;;;;5404:54;;;;;;;;5590:10;5501:100;;;5529:5;5536:6;5544;5552:7;5561:9;:17;5571:6;5561:17;;;;;;;;;;;;;;;;;:27;;;5501:100;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;5501:100:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5614:6;5607:13;;4538:1087;;;;;;:::o;10859:204::-;10915:4;10927:25;;:::i;:::-;10955:9;:18;10965:7;10955:18;;;;;;;;;;;;;;;;;10927:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10994:4;:14;;;10988:3;:20;:44;;;;;11018:4;:14;;;11012:3;:20;10988:44;:69;;;;;11056:1;11036:4;:16;;;:21;10988:69;10980:78;;10859:204;;;;:::o;1653:38::-;;;;;;;;;;;;;;;;;:::o;1931:27::-;;;;;;;;;;;;;:::o;1962:24::-;;;;;;;;;;;;;:::o;14418:92::-;14499:6;14472;:24;14489:5;14479:16;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;14479:16:1;;;;;;;;;;;;;;;;14472:24;;;;;;;;;;;;;;;;;:33;;;;14418:92;;:::o;13238:994::-;13295:25;;:::i;:::-;13347:27;13497:11;13323:9;:18;13333:7;13323:18;;;;;;;;;;;;;;;;;13295:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13377:10;:28;13388:4;:16;;;13377:28;;;;;;;;;;;13347:58;;13511:39;13533:4;:16;;;13511:21;:39::i;:::-;13497:53;;13583:6;;;;;;;;;;;:45;;;13629:4;:16;;;13583:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13583:63:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13583:63:1;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13583:63:1;;;;;;;;;;;;;;;;13557:9;:23;;:89;;;;13673:4;13652:9;:18;;;:25;;;;;;;;;;;;;;;;;;13688:6;;;;;;;;;;;:15;;;13704:4;:16;;;13688:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13688:33:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13688:33:1;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13688:33:1;;;;;;;;;;;;;;;;13684:544;;;13776:3;13759:4;:14;;;:20;13755:71;;;13791:26;13795:4;:9;;;13806:4;:10;;;13791:3;:26::i;:::-;13755:71;13864:4;:16;;;13855:7;13838:90;;;;13882:9;:20;;;13904:9;:23;;;13838:90;;;;;;;;;;;;;;;;;;;;;;;;13944:5;;;;;;;;;;;:14;;;13959:4;:10;;;13971:6;13944:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13944:34:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13944:34:1;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13944:34:1;;;;;;;;;;;;;;;;13936:43;;;;;;;;13684:544;;;14077:4;:16;;;14068:7;14048:93;;;;14095:9;:20;;;14117:9;:23;;;14048:93;;;;;;;;;;;;;;;;;;;;;;;;14157:5;;;;;;;;;;;:14;;;14172:10;:28;14183:4;:16;;;14172:28;;;;;;;;;;;:39;;;;;;;;;;;;14213:6;14157:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14157:63:1;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14157:63:1;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14157:63:1;;;;;;;;;;;;;;;;14149:72;;;;;;;;13684:544;13238:994;;;;:::o;680:133:8:-;742:7;757:9;773:1;769;:5;757:17;;792:1;787;:6;;780:14;;;;;;807:1;800:8;;680:133;;;;;:::o;562:114::-;624:7;651:1;646;:6;;639:14;;;;;;670:1;666;:5;659:12;;562:114;;;;:::o;138:147::-;200:7;215:9;231:1;227;:5;215:17;;250:1;245;:6;:20;;;;264:1;259;255;:5;;;;;;;;:10;245:20;238:28;;;;;;279:1;272:8;;138:147;;;;;:::o;289:269::-;351:7;440:9;456:1;452;:5;;;;;;;;440:17;;552:1;545:8;;289:269;;;;;:::o;142:14370:1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", - "source": "pragma solidity 0.4.24;\n\nimport \"plcrvoting/PLCRVoting.sol\";\nimport \"tokens/eip20/EIP20Interface.sol\";\nimport \"zeppelin/math/SafeMath.sol\";\n\n\ncontract Parameterizer {\n\n // ------\n // EVENTS\n // ------\n\n event _ReparameterizationProposal(string name, uint value, bytes32 propID, uint deposit, uint appEndDate, address indexed proposer);\n event _NewChallenge(bytes32 indexed propID, uint challengeID, uint commitEndDate, uint revealEndDate, address indexed challenger);\n event _ProposalAccepted(bytes32 indexed propID, string name, uint value);\n event _ProposalExpired(bytes32 indexed propID);\n event _ChallengeSucceeded(bytes32 indexed propID, uint indexed challengeID, uint rewardPool, uint totalTokens);\n event _ChallengeFailed(bytes32 indexed propID, uint indexed challengeID, uint rewardPool, uint totalTokens);\n event _RewardClaimed(uint indexed challengeID, uint reward, address indexed voter);\n\n\n // ------\n // DATA STRUCTURES\n // ------\n\n using SafeMath for uint;\n\n struct ParamProposal {\n uint appExpiry;\n uint challengeID;\n uint deposit;\n string name;\n address owner;\n uint processBy;\n uint value;\n }\n\n struct Challenge {\n uint rewardPool; // (remaining) pool of tokens distributed amongst winning voters\n address challenger; // owner of Challenge\n bool resolved; // indication of if challenge is resolved\n uint stake; // number of tokens at risk for either party during challenge\n uint winningTokens; // (remaining) amount of tokens used for voting by the winning side\n mapping(address => bool) tokenClaims;\n }\n\n // ------\n // STATE\n // ------\n\n mapping(bytes32 => uint) public params;\n\n // maps challengeIDs to associated challenge data\n mapping(uint => Challenge) public challenges;\n\n // maps pollIDs to intended data change if poll passes\n mapping(bytes32 => ParamProposal) public proposals;\n\n // Global Variables\n EIP20Interface public token;\n PLCRVoting public voting;\n uint public PROCESSBY = 604800; // 7 days\n\n // ------------\n // CONSTRUCTOR\n // ------------\n\n /**\n @dev constructor\n @param _tokenAddr address of the token which parameterizes this system\n @param _plcrAddr address of a PLCR voting contract for the provided token\n @param _minDeposit minimum deposit for listing to be whitelisted\n @param _pMinDeposit minimum deposit to propose a reparameterization\n @param _applyStageLen period over which applicants wait to be whitelisted\n @param _pApplyStageLen period over which reparmeterization proposals wait to be processed\n @param _dispensationPct percentage of losing party's deposit distributed to winning party\n @param _pDispensationPct percentage of losing party's deposit distributed to winning party in parameterizer\n @param _commitStageLen length of commit period for voting\n @param _pCommitStageLen length of commit period for voting in parameterizer\n @param _revealStageLen length of reveal period for voting\n @param _pRevealStageLen length of reveal period for voting in parameterizer\n @param _voteQuorum type of majority out of 100 necessary for vote success\n @param _pVoteQuorum type of majority out of 100 necessary for vote success in parameterizer\n */\n function Parameterizer(\n address _tokenAddr,\n address _plcrAddr,\n uint _minDeposit,\n uint _pMinDeposit,\n uint _applyStageLen,\n uint _pApplyStageLen,\n uint _commitStageLen,\n uint _pCommitStageLen,\n uint _revealStageLen,\n uint _pRevealStageLen,\n uint _dispensationPct,\n uint _pDispensationPct,\n uint _voteQuorum,\n uint _pVoteQuorum\n ) public\n {\n token = EIP20Interface(_tokenAddr);\n voting = PLCRVoting(_plcrAddr);\n\n set(\"minDeposit\", _minDeposit);\n set(\"pMinDeposit\", _pMinDeposit);\n set(\"applyStageLen\", _applyStageLen);\n set(\"pApplyStageLen\", _pApplyStageLen);\n set(\"commitStageLen\", _commitStageLen);\n set(\"pCommitStageLen\", _pCommitStageLen);\n set(\"revealStageLen\", _revealStageLen);\n set(\"pRevealStageLen\", _pRevealStageLen);\n set(\"dispensationPct\", _dispensationPct);\n set(\"pDispensationPct\", _pDispensationPct);\n set(\"voteQuorum\", _voteQuorum);\n set(\"pVoteQuorum\", _pVoteQuorum);\n }\n\n // -----------------------\n // TOKEN HOLDER INTERFACE\n // -----------------------\n\n /**\n @notice propose a reparamaterization of the key _name's value to _value.\n @param _name the name of the proposed param to be set\n @param _value the proposed value to set the param to be set\n */\n function proposeReparameterization(string _name, uint _value) public returns (bytes32) {\n uint deposit = get(\"pMinDeposit\");\n bytes32 propID = keccak256(_name, _value);\n\n if (keccak256(_name) == keccak256(\"dispensationPct\") ||\n keccak256(_name) == keccak256(\"pDispensationPct\")) {\n require(_value <= 100);\n }\n\n require(!propExists(propID)); // Forbid duplicate proposals\n require(get(_name) != _value); // Forbid NOOP reparameterizations\n\n // attach name and value to pollID\n proposals[propID] = ParamProposal({\n appExpiry: now.add(get(\"pApplyStageLen\")),\n challengeID: 0,\n deposit: deposit,\n name: _name,\n owner: msg.sender,\n processBy: now.add(get(\"pApplyStageLen\"))\n .add(get(\"pCommitStageLen\"))\n .add(get(\"pRevealStageLen\"))\n .add(PROCESSBY),\n value: _value\n });\n\n require(token.transferFrom(msg.sender, this, deposit)); // escrow tokens (deposit amt)\n\n emit _ReparameterizationProposal(_name, _value, propID, deposit, proposals[propID].appExpiry, msg.sender);\n return propID;\n }\n\n /**\n @notice challenge the provided proposal ID, and put tokens at stake to do so.\n @param _propID the proposal ID to challenge\n */\n function challengeReparameterization(bytes32 _propID) public returns (uint challengeID) {\n ParamProposal memory prop = proposals[_propID];\n uint deposit = prop.deposit;\n\n require(propExists(_propID) && prop.challengeID == 0);\n\n //start poll\n uint pollID = voting.startPoll(\n get(\"pVoteQuorum\"),\n get(\"pCommitStageLen\"),\n get(\"pRevealStageLen\")\n );\n\n challenges[pollID] = Challenge({\n challenger: msg.sender,\n rewardPool: SafeMath.sub(100, get(\"pDispensationPct\")).mul(deposit).div(100),\n stake: deposit,\n resolved: false,\n winningTokens: 0\n });\n\n proposals[_propID].challengeID = pollID; // update listing to store most recent challenge\n\n //take tokens from challenger\n require(token.transferFrom(msg.sender, this, deposit));\n\n uint commitEndDate;\n uint revealEndDate;\n (commitEndDate, revealEndDate,) = voting.pollMap(pollID);\n \n emit _NewChallenge(_propID, pollID, commitEndDate, revealEndDate, msg.sender);\n return pollID;\n }\n\n /**\n @notice for the provided proposal ID, set it, resolve its challenge, or delete it depending on whether it can be set, has a challenge which can be resolved, or if its \"process by\" date has passed\n @param _propID the proposal ID to make a determination and state transition for\n */\n function processProposal(bytes32 _propID) public {\n ParamProposal storage prop = proposals[_propID];\n address propOwner = prop.owner;\n uint propDeposit = prop.deposit;\n\n // Before any token transfers, deleting the proposal will ensure that if reentrancy occurs the\n // prop.owner and prop.deposit will be 0, thereby preventing theft\n if (canBeSet(_propID)) {\n // There is no challenge against the proposal. The processBy date for the proposal has not\n // passed, but the proposal's appExpirty date has passed.\n set(prop.name, prop.value);\n emit _ProposalAccepted(_propID, prop.name, prop.value);\n delete proposals[_propID];\n require(token.transfer(propOwner, propDeposit));\n } else if (challengeCanBeResolved(_propID)) {\n // There is a challenge against the proposal.\n resolveChallenge(_propID);\n } else if (now > prop.processBy) {\n // There is no challenge against the proposal, but the processBy date has passed.\n emit _ProposalExpired(_propID);\n delete proposals[_propID];\n require(token.transfer(propOwner, propDeposit));\n } else {\n // There is no challenge against the proposal, and neither the appExpiry date nor the\n // processBy date has passed.\n revert();\n }\n\n assert(get(\"dispensationPct\") <= 100);\n assert(get(\"pDispensationPct\") <= 100);\n\n // verify that future proposal appExpiry and processBy times will not overflow\n now.add(get(\"pApplyStageLen\"))\n .add(get(\"pCommitStageLen\"))\n .add(get(\"pRevealStageLen\"))\n .add(PROCESSBY);\n\n delete proposals[_propID];\n }\n\n /**\n @notice claim the tokens owed for the msg.sender in the provided challenge\n @param _challengeID the challenge ID to claim tokens for\n @param _salt the salt used to vote in the challenge being withdrawn for\n */\n function claimReward(uint _challengeID, uint _salt) public {\n // ensure voter has not already claimed tokens and challenge results have been processed\n require(challenges[_challengeID].tokenClaims[msg.sender] == false);\n require(challenges[_challengeID].resolved == true);\n\n uint voterTokens = voting.getNumPassingTokens(msg.sender, _challengeID, _salt);\n uint reward = voterReward(msg.sender, _challengeID, _salt);\n\n // subtract voter's information to preserve the participation ratios of other voters\n // compared to the remaining pool of rewards\n challenges[_challengeID].winningTokens -= voterTokens;\n challenges[_challengeID].rewardPool -= reward;\n\n // ensures a voter cannot claim tokens again\n challenges[_challengeID].tokenClaims[msg.sender] = true;\n\n emit _RewardClaimed(_challengeID, reward, msg.sender);\n require(token.transfer(msg.sender, reward));\n }\n\n // --------\n // GETTERS\n // --------\n\n /**\n @dev Calculates the provided voter's token reward for the given poll.\n @param _voter The address of the voter whose reward balance is to be returned\n @param _challengeID The ID of the challenge the voter's reward is being calculated for\n @param _salt The salt of the voter's commit hash in the given poll\n @return The uint indicating the voter's reward\n */\n function voterReward(address _voter, uint _challengeID, uint _salt)\n public view returns (uint)\n {\n uint winningTokens = challenges[_challengeID].winningTokens;\n uint rewardPool = challenges[_challengeID].rewardPool;\n uint voterTokens = voting.getNumPassingTokens(_voter, _challengeID, _salt);\n return (voterTokens * rewardPool) / winningTokens;\n }\n\n /**\n @notice Determines whether a proposal passed its application stage without a challenge\n @param _propID The proposal ID for which to determine whether its application stage passed without a challenge\n */\n function canBeSet(bytes32 _propID) view public returns (bool) {\n ParamProposal memory prop = proposals[_propID];\n\n return (now > prop.appExpiry && now < prop.processBy && prop.challengeID == 0);\n }\n\n /**\n @notice Determines whether a proposal exists for the provided proposal ID\n @param _propID The proposal ID whose existance is to be determined\n */\n function propExists(bytes32 _propID) view public returns (bool) {\n return proposals[_propID].processBy > 0;\n }\n\n /**\n @notice Determines whether the provided proposal ID has a challenge which can be resolved\n @param _propID The proposal ID whose challenge to inspect\n */\n function challengeCanBeResolved(bytes32 _propID) view public returns (bool) {\n ParamProposal memory prop = proposals[_propID];\n Challenge memory challenge = challenges[prop.challengeID];\n\n return (prop.challengeID > 0 && challenge.resolved == false && voting.pollEnded(prop.challengeID));\n }\n\n /**\n @notice Determines the number of tokens to awarded to the winning party in a challenge\n @param _challengeID The challengeID to determine a reward for\n */\n function challengeWinnerReward(uint _challengeID) public view returns (uint) {\n if (voting.getTotalNumberOfTokensForWinningOption(_challengeID) == 0) {\n // Edge case, nobody voted, give all tokens to the challenger.\n return 2 * challenges[_challengeID].stake;\n }\n\n return (2 * challenges[_challengeID].stake) - challenges[_challengeID].rewardPool;\n }\n\n /**\n @notice gets the parameter keyed by the provided name value from the params mapping\n @param _name the key whose value is to be determined\n */\n function get(string _name) public view returns (uint value) {\n return params[keccak256(_name)];\n }\n\n /**\n @dev Getter for Challenge tokenClaims mappings\n @param _challengeID The challengeID to query\n @param _voter The voter whose claim status to query for the provided challengeID\n */\n function tokenClaims(uint _challengeID, address _voter) public view returns (bool) {\n return challenges[_challengeID].tokenClaims[_voter];\n }\n\n // ----------------\n // PRIVATE FUNCTIONS\n // ----------------\n\n /**\n @dev resolves a challenge for the provided _propID. It must be checked in advance whether the _propID has a challenge on it\n @param _propID the proposal ID whose challenge is to be resolved.\n */\n function resolveChallenge(bytes32 _propID) private {\n ParamProposal memory prop = proposals[_propID];\n Challenge storage challenge = challenges[prop.challengeID];\n\n // winner gets back their full staked deposit, and dispensationPct*loser's stake\n uint reward = challengeWinnerReward(prop.challengeID);\n\n challenge.winningTokens = voting.getTotalNumberOfTokensForWinningOption(prop.challengeID);\n challenge.resolved = true;\n\n if (voting.isPassed(prop.challengeID)) { // The challenge failed\n if (prop.processBy > now) {\n set(prop.name, prop.value);\n }\n emit _ChallengeFailed(_propID, prop.challengeID, challenge.rewardPool, challenge.winningTokens);\n require(token.transfer(prop.owner, reward));\n } else { // The challenge succeeded or nobody voted\n emit _ChallengeSucceeded(_propID, prop.challengeID, challenge.rewardPool, challenge.winningTokens);\n require(token.transfer(challenges[prop.challengeID].challenger, reward));\n }\n }\n\n /**\n @dev sets the param keted by the provided name to the provided value\n @param _name the name of the param to be set\n @param _value the value to set the param to be set\n */\n function set(string _name, uint _value) private {\n params[keccak256(_name)] = _value;\n }\n}\n", - "sourcePath": "/home/rbharath/computable/contracts/Parameterizer.sol", + "bytecode": "0x608060405262093a806005553480156200001857600080fd5b506040516101c08062003ce083398101806040528101908080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291905050508d600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508c600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620001916040805190810160405280600a81526020017f6d696e4465706f736974000000000000000000000000000000000000000000008152508d62000515640100000000026401000000009004565b620001e16040805190810160405280600b81526020017f704d696e4465706f7369740000000000000000000000000000000000000000008152508c62000515640100000000026401000000009004565b620002316040805190810160405280600d81526020017f6170706c7953746167654c656e000000000000000000000000000000000000008152508b62000515640100000000026401000000009004565b620002816040805190810160405280600e81526020017f704170706c7953746167654c656e0000000000000000000000000000000000008152508a62000515640100000000026401000000009004565b620002d16040805190810160405280600e81526020017f636f6d6d697453746167654c656e0000000000000000000000000000000000008152508962000515640100000000026401000000009004565b620003216040805190810160405280600f81526020017f70436f6d6d697453746167654c656e00000000000000000000000000000000008152508862000515640100000000026401000000009004565b620003716040805190810160405280600e81526020017f72657665616c53746167654c656e0000000000000000000000000000000000008152508762000515640100000000026401000000009004565b620003c16040805190810160405280600f81526020017f7052657665616c53746167654c656e00000000000000000000000000000000008152508662000515640100000000026401000000009004565b620004116040805190810160405280600f81526020017f64697370656e736174696f6e50637400000000000000000000000000000000008152508562000515640100000000026401000000009004565b620004616040805190810160405280601081526020017f7044697370656e736174696f6e506374000000000000000000000000000000008152508462000515640100000000026401000000009004565b620004b16040805190810160405280600a81526020017f766f746551756f72756d000000000000000000000000000000000000000000008152508362000515640100000000026401000000009004565b620005016040805190810160405280600b81526020017f70566f746551756f72756d0000000000000000000000000000000000000000008152508262000515640100000000026401000000009004565b50505050505050505050505050506200060a565b80600080846040516020018082805190602001908083835b6020831015156200055457805182526020820191506020810190506020830392506200052d565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515620005bf578051825260208201915060208101905060208303925062000598565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020819055505050565b6136c6806200061a6000396000f3006080604052600436106100f0576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806229514f146100f557806330490e911461012057806332ed5b12146101515780633530099014610251578063504115521461029a578063693ec85e146102db57806377609a41146103585780638240ae4b146103a157806386bb8f37146103e65780638f1d37761461041d578063a5ba3b1e146104aa578063a7aad3db1461050f578063bade1c541461057a578063c51131fb14610609578063dc6ab52714610652578063fc0c546a14610697578063fce1ccca146106ee575b600080fd5b34801561010157600080fd5b5061010a610745565b6040518082815260200191505060405180910390f35b34801561012c57600080fd5b5061014f600480360381019080803560001916906020019092919050505061074b565b005b34801561015d57600080fd5b506101806004803603810190808035600019169060200190929190505050610eb4565b60405180888152602001878152602001868152602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848152602001838152602001828103825286818151815260200191508051906020019080838360005b838110156102105780820151818401526020810190506101f5565b50505050905090810190601f16801561023d5780820380516001836020036101000a031916815260200191505b509850505050505050505060405180910390f35b34801561025d57600080fd5b506102806004803603810190808035600019169060200190929190505050610fae565b604051808215151515815260200191505060405180910390f35b3480156102a657600080fd5b506102c560048036038101908080359060200190929190505050610fd8565b6040518082815260200191505060405180910390f35b3480156102e757600080fd5b50610342600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611108565b6040518082815260200191505060405180910390f35b34801561036457600080fd5b5061038760048036038101908080356000191690602001909291905050506111fa565b604051808215151515815260200191505060405180910390f35b3480156103ad57600080fd5b506103d06004803603810190808035600019169060200190929190505050611510565b6040518082815260200191505060405180910390f35b3480156103f257600080fd5b5061041b6004803603810190808035906020019092919080359060200190929190505050611c50565b005b34801561042957600080fd5b5061044860048036038101908080359060200190929190505050612026565b604051808681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001841515151581526020018381526020018281526020019550505050505060405180910390f35b3480156104b657600080fd5b506104f560048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612089565b604051808215151515815260200191505060405180910390f35b34801561051b57600080fd5b50610564600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291905050506120f4565b6040518082815260200191505060405180910390f35b34801561058657600080fd5b506105eb600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190505050612250565b60405180826000191660001916815260200191505060405180910390f35b34801561061557600080fd5b506106386004803603810190808035600019169060200190929190505050612b3d565b604051808215151515815260200191505060405180910390f35b34801561065e57600080fd5b506106816004803603810190808035600019169060200190929190505050612cc8565b6040518082815260200191505060405180910390f35b3480156106a357600080fd5b506106ac612ce0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106fa57600080fd5b50610703612d06565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60055481565b600080600060026000856000191660001916815260200190815260200160002092508260040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150826002015490506107a484612b3d565b15610aad57610853836003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108445780601f1061081957610100808354040283529160200191610844565b820191906000526020600020905b81548152906001019060200180831161082757829003601f168201915b50505050508460060154612d2c565b83600019167f37f3986c71e1aa2c470cfc4a92af70820610c3065589d35ef1664ea27f3e73a584600301856006015460405180806020018381526020018281038252848181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156109115780601f106108e657610100808354040283529160200191610911565b820191906000526020600020905b8154815290600101906020018083116108f457829003601f168201915b5050935050505060405180910390a2600260008560001916600019168152602001908152602001600020600080820160009055600182016000905560028201600090556003820160006109649190613511565b6004820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600582016000905560068201600090555050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610a6257600080fd5b505af1158015610a76573d6000803e3d6000fd5b505050506040513d6020811015610a8c57600080fd5b81019080805190602001909291905050501515610aa857600080fd5b610c9a565b610ab6846111fa565b15610ac957610ac484612e1d565b610c99565b8260050154421115610c935783600019167f29026cb2acebe6d0a4b6d593ccadf76e3fc6d0a02254e078b0c4a619608089d760405160405180910390a260026000856000191660001916815260200190815260200160002060008082016000905560018201600090556002820160009055600382016000610b4a9190613511565b6004820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600582016000905560068201600090555050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610c4857600080fd5b505af1158015610c5c573d6000803e3d6000fd5b505050506040513d6020811015610c7257600080fd5b81019080805190602001909291905050501515610c8e57600080fd5b610c98565b600080fd5b5b5b6064610cda6040805190810160405280600f81526020017f64697370656e736174696f6e5063740000000000000000000000000000000000815250611108565b11151515610ce457fe5b6064610d246040805190810160405280601081526020017f7044697370656e736174696f6e50637400000000000000000000000000000000815250611108565b11151515610d2e57fe5b610e30600554610e22610d756040805190810160405280600f81526020017f7052657665616c53746167654c656e0000000000000000000000000000000000815250611108565b610e14610db66040805190810160405280600f81526020017f70436f6d6d697453746167654c656e0000000000000000000000000000000000815250611108565b610e06610df76040805190810160405280600e81526020017f704170706c7953746167654c656e000000000000000000000000000000000000815250611108565b4261348e90919063ffffffff16565b61348e90919063ffffffff16565b61348e90919063ffffffff16565b61348e90919063ffffffff16565b5060026000856000191660001916815260200190815260200160002060008082016000905560018201600090556002820160009055600382016000610e759190613511565b6004820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560058201600090556006820160009055505050505050565b6002602052806000526040600020600091509050806000015490806001015490806002015490806003018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f725780601f10610f4757610100808354040283529160200191610f72565b820191906000526020600020905b815481529060010190602001808311610f5557829003601f168201915b5050505050908060040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060050154908060060154905087565b60008060026000846000191660001916815260200190815260200160002060050154119050919050565b600080600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a6846040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561106c57600080fd5b505af1158015611080573d6000803e3d6000fd5b505050506040513d602081101561109657600080fd5b810190808051906020019092919050505014156110ce5760016000838152602001908152602001600020600201546002029050611103565b600160008381526020019081526020016000206000015460016000848152602001908152602001600020600201546002020390505b919050565b6000806000836040516020018082805190602001908083835b6020831015156111465780518252602082019150602081019050602083039250611121565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156111af578051825260208201915060208101905060208303925061118a565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000611204613559565b61120c6135ad565b60026000856000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112ea5780601f106112bf576101008083540402835291602001916112ea565b820191906000526020600020905b8154815290600101906020018083116112cd57829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600582015481526020016006820154815250509150600160008360200151815260200190815260200160002060a06040519081016040529081600082015481526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160149054906101000a900460ff161515151581526020016002820154815260200160038201548152505090506000826020015111801561142f57506000151581604001511515145b80156115075750600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ee68483083602001516040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b1580156114cb57600080fd5b505af11580156114df573d6000803e3d6000fd5b505050506040513d60208110156114f557600080fd5b81019080805190602001909291905050505b92505050919050565b600061151a613559565b60008060008060026000886000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156115fe5780601f106115d3576101008083540402835291602001916115fe565b820191906000526020600020905b8154815290600101906020018083116115e157829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016005820154815260200160068201548152505094508460400151935061168387610fae565b8015611693575060008560200151145b151561169e57600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166332ed3d6061171a6040805190810160405280600b81526020017f70566f746551756f72756d000000000000000000000000000000000000000000815250611108565b6117586040805190810160405280600f81526020017f70436f6d6d697453746167654c656e0000000000000000000000000000000000815250611108565b6117966040805190810160405280600f81526020017f7052657665616c53746167654c656e0000000000000000000000000000000000815250611108565b6040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018381526020018281526020019350505050602060405180830381600087803b1580156117f657600080fd5b505af115801561180a573d6000803e3d6000fd5b505050506040513d602081101561182057600080fd5b8101908080519060200190929190505050925060a0604051908101604052806118ac606461189e88611890606461188b6040805190810160405280601081526020017f7044697370656e736174696f6e50637400000000000000000000000000000000815250611108565b6134aa565b6134c390919063ffffffff16565b6134fb90919063ffffffff16565b81526020013373ffffffffffffffffffffffffffffffffffffffff1681526020016000151581526020018581526020016000815250600160008581526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010160146101000a81548160ff02191690831515021790555060608201518160020155608082015181600301559050508260026000896000191660001916815260200190815260200160002060010181905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330876040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015611a9857600080fd5b505af1158015611aac573d6000803e3d6000fd5b505050506040513d6020811015611ac257600080fd5b81019080805190602001909291905050501515611ade57600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636148fed5846040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060a060405180830381600087803b158015611b6f57600080fd5b505af1158015611b83573d6000803e3d6000fd5b505050506040513d60a0811015611b9957600080fd5b81019080805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919050505090915090505080925081935050503373ffffffffffffffffffffffffffffffffffffffff1687600019167fe94e3086c4bfe84acba4437b85a80fca3721dfc419d1f7afe4fa4e470e670b4885858560405180848152602001838152602001828152602001935050505060405180910390a38295505050505050919050565b600080600015156001600086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515141515611cc657600080fd5b600115156001600086815260200190815260200160002060010160149054906101000a900460ff161515141515611cfc57600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0693386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b158015611dc957600080fd5b505af1158015611ddd573d6000803e3d6000fd5b505050506040513d6020811015611df357600080fd5b81019080805190602001909291905050509150611e113385856120f4565b9050816001600086815260200190815260200160002060030160008282540392505081905550806001600086815260200190815260200160002060000160008282540392505081905550600180600086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff16847f6f4c982acc31b0af2cf1dc1556f21c0325d893782d65e83c68a5534a33f59957836040518082815260200191505060405180910390a3600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611fda57600080fd5b505af1158015611fee573d6000803e3d6000fd5b505050506040513d602081101561200457600080fd5b8101908080519060200190929190505050151561202057600080fd5b50505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010160149054906101000a900460ff16908060020154908060030154905085565b60006001600084815260200190815260200160002060040160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000806000806001600087815260200190815260200160002060030154925060016000878152602001908152602001600020600001549150600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0698888886040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b1580156121f957600080fd5b505af115801561220d573d6000803e3d6000fd5b505050506040513d602081101561222357600080fd5b810190808051906020019092919050505090508282820281151561224357fe5b0493505050509392505050565b60008060006122936040805190810160405280600b81526020017f704d696e4465706f736974000000000000000000000000000000000000000000815250611108565b915084846040516020018083805190602001908083835b6020831015156122cf57805182526020820191506020810190506020830392506122aa565b6001836020036101000a038019825116818451168082178552505050505050905001828152602001925050506040516020818303038152906040526040518082805190602001908083835b60208310151561233f578051825260208201915060208101905060208303925061231a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020905060405160200180807f64697370656e736174696f6e5063740000000000000000000000000000000000815250600f0190506040516020818303038152906040526040518082805190602001908083835b6020831015156123e357805182526020820191506020810190506020830392506123be565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916856040516020018082805190602001908083835b60208310151561244d5780518252602082019150602081019050602083039250612428565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156124b65780518252602082019150602081019050602083039250612491565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019161480612669575060405160200180807f7044697370656e736174696f6e5063740000000000000000000000000000000081525060100190506040516020818303038152906040526040518082805190602001908083835b602083101515612563578051825260208201915060208101905060208303925061253e565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916856040516020018082805190602001908083835b6020831015156125cd57805182526020820191506020810190506020830392506125a8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156126365780518252602082019150602081019050602083039250612611565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916145b1561267f576064841115151561267e57600080fd5b5b61268881610fae565b15151561269457600080fd5b8361269e86611108565b141515156126ab57600080fd5b60e0604051908101604052806127076126f86040805190810160405280600e81526020017f704170706c7953746167654c656e000000000000000000000000000000000000815250611108565b4261348e90919063ffffffff16565b8152602001600081526020018381526020018681526020013373ffffffffffffffffffffffffffffffffffffffff16815260200161283d60055461282f6127826040805190810160405280600f81526020017f7052657665616c53746167654c656e0000000000000000000000000000000000815250611108565b6128216127c36040805190810160405280600f81526020017f70436f6d6d697453746167654c656e0000000000000000000000000000000000815250611108565b6128136128046040805190810160405280600e81526020017f704170706c7953746167654c656e000000000000000000000000000000000000815250611108565b4261348e90919063ffffffff16565b61348e90919063ffffffff16565b61348e90919063ffffffff16565b61348e90919063ffffffff16565b815260200185815250600260008360001916600019168152602001908152602001600020600082015181600001556020820151816001015560408201518160020155606082015181600301908051906020019061289b9291906135f5565b5060808201518160040160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060a0820151816005015560c08201518160060155905050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156129f357600080fd5b505af1158015612a07573d6000803e3d6000fd5b505050506040513d6020811015612a1d57600080fd5b81019080805190602001909291905050501515612a3957600080fd5b3373ffffffffffffffffffffffffffffffffffffffff167fb25bdef16105f099e5c185f9c7fd969571e8e0caa3f7bd75409512fe0a41a60b868684866002600088600019166000191681526020019081526020016000206000015460405180806020018681526020018560001916600019168152602001848152602001838152602001828103825287818151815260200191508051906020019080838360005b83811015612af4578082015181840152602081019050612ad9565b50505050905090810190601f168015612b215780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a2809250505092915050565b6000612b47613559565b60026000846000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612c255780601f10612bfa57610100808354040283529160200191612c25565b820191906000526020600020905b815481529060010190602001808311612c0857829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600582015481526020016006820154815250509050806000015142118015612cb057508060a0015142105b8015612cc0575060008160200151145b915050919050565b60006020528060005260406000206000915090505481565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b80600080846040516020018082805190602001908083835b602083101515612d695780518252602082019150602081019050602083039250612d44565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515612dd25780518252602082019150602081019050602083039250612dad565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020819055505050565b612e25613559565b60008060026000856000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612f065780601f10612edb57610100808354040283529160200191612f06565b820191906000526020600020905b815481529060010190602001808311612ee957829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160058201548152602001600682015481525050925060016000846020015181526020019081526020016000209150612fa18360200151610fd8565b9050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a684602001516040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561303857600080fd5b505af115801561304c573d6000803e3d6000fd5b505050506040513d602081101561306257600080fd5b8101908080519060200190929190505050826003018190555060018260010160146101000a81548160ff021916908315150217905550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634940318384602001516040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561312d57600080fd5b505af1158015613141573d6000803e3d6000fd5b505050506040513d602081101561315757600080fd5b8101908080519060200190929190505050156132f157428360a00151111561318c5761318b83606001518460c00151612d2c565b5b826020015184600019167fc4497224aa78dd50c9b3e344aab02596201ca1e6dca4057a91a6c02f83f4f6c184600001548560030154604051808381526020018281526020019250505060405180910390a3600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8460800151836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156132a657600080fd5b505af11580156132ba573d6000803e3d6000fd5b505050506040513d60208110156132d057600080fd5b810190808051906020019092919050505015156132ec57600080fd5b613488565b826020015184600019167f362a12431f779a2baff4f77f75ba7960ae993a5c41b425df11f7fd0af2b9cbe684600001548560030154604051808381526020018281526020019250505060405180910390a3600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600160008660200151815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561344157600080fd5b505af1158015613455573d6000803e3d6000fd5b505050506040513d602081101561346b57600080fd5b8101908080519060200190929190505050151561348757600080fd5b5b50505050565b600081830190508281101515156134a157fe5b80905092915050565b60008282111515156134b857fe5b818303905092915050565b6000808314156134d657600090506134f5565b81830290508183828115156134e757fe5b041415156134f157fe5b8090505b92915050565b6000818381151561350857fe5b04905092915050565b50805460018160011615610100020316600290046000825580601f106135375750613556565b601f0160209004906000526020600020908101906135559190613675565b5b50565b60e06040519081016040528060008152602001600081526020016000815260200160608152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600081525090565b60a06040519081016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160001515815260200160008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061363657805160ff1916838001178555613664565b82800160010185558215613664579182015b82811115613663578251825591602001919060010190613648565b5b5090506136719190613675565b5090565b61369791905b8082111561369357600081600090555060010161367b565b5090565b905600a165627a7a72305820b56902304e03050844a67f14400cd7039bc3123b20270b9fd90d5971122555750029", + "deployedBytecode": "0x6080604052600436106100f0576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806229514f146100f557806330490e911461012057806332ed5b12146101515780633530099014610251578063504115521461029a578063693ec85e146102db57806377609a41146103585780638240ae4b146103a157806386bb8f37146103e65780638f1d37761461041d578063a5ba3b1e146104aa578063a7aad3db1461050f578063bade1c541461057a578063c51131fb14610609578063dc6ab52714610652578063fc0c546a14610697578063fce1ccca146106ee575b600080fd5b34801561010157600080fd5b5061010a610745565b6040518082815260200191505060405180910390f35b34801561012c57600080fd5b5061014f600480360381019080803560001916906020019092919050505061074b565b005b34801561015d57600080fd5b506101806004803603810190808035600019169060200190929190505050610eb4565b60405180888152602001878152602001868152602001806020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848152602001838152602001828103825286818151815260200191508051906020019080838360005b838110156102105780820151818401526020810190506101f5565b50505050905090810190601f16801561023d5780820380516001836020036101000a031916815260200191505b509850505050505050505060405180910390f35b34801561025d57600080fd5b506102806004803603810190808035600019169060200190929190505050610fae565b604051808215151515815260200191505060405180910390f35b3480156102a657600080fd5b506102c560048036038101908080359060200190929190505050610fd8565b6040518082815260200191505060405180910390f35b3480156102e757600080fd5b50610342600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611108565b6040518082815260200191505060405180910390f35b34801561036457600080fd5b5061038760048036038101908080356000191690602001909291905050506111fa565b604051808215151515815260200191505060405180910390f35b3480156103ad57600080fd5b506103d06004803603810190808035600019169060200190929190505050611510565b6040518082815260200191505060405180910390f35b3480156103f257600080fd5b5061041b6004803603810190808035906020019092919080359060200190929190505050611c50565b005b34801561042957600080fd5b5061044860048036038101908080359060200190929190505050612026565b604051808681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001841515151581526020018381526020018281526020019550505050505060405180910390f35b3480156104b657600080fd5b506104f560048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612089565b604051808215151515815260200191505060405180910390f35b34801561051b57600080fd5b50610564600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291905050506120f4565b6040518082815260200191505060405180910390f35b34801561058657600080fd5b506105eb600480360381019080803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929080359060200190929190505050612250565b60405180826000191660001916815260200191505060405180910390f35b34801561061557600080fd5b506106386004803603810190808035600019169060200190929190505050612b3d565b604051808215151515815260200191505060405180910390f35b34801561065e57600080fd5b506106816004803603810190808035600019169060200190929190505050612cc8565b6040518082815260200191505060405180910390f35b3480156106a357600080fd5b506106ac612ce0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106fa57600080fd5b50610703612d06565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60055481565b600080600060026000856000191660001916815260200190815260200160002092508260040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150826002015490506107a484612b3d565b15610aad57610853836003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108445780601f1061081957610100808354040283529160200191610844565b820191906000526020600020905b81548152906001019060200180831161082757829003601f168201915b50505050508460060154612d2c565b83600019167f37f3986c71e1aa2c470cfc4a92af70820610c3065589d35ef1664ea27f3e73a584600301856006015460405180806020018381526020018281038252848181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156109115780601f106108e657610100808354040283529160200191610911565b820191906000526020600020905b8154815290600101906020018083116108f457829003601f168201915b5050935050505060405180910390a2600260008560001916600019168152602001908152602001600020600080820160009055600182016000905560028201600090556003820160006109649190613511565b6004820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600582016000905560068201600090555050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610a6257600080fd5b505af1158015610a76573d6000803e3d6000fd5b505050506040513d6020811015610a8c57600080fd5b81019080805190602001909291905050501515610aa857600080fd5b610c9a565b610ab6846111fa565b15610ac957610ac484612e1d565b610c99565b8260050154421115610c935783600019167f29026cb2acebe6d0a4b6d593ccadf76e3fc6d0a02254e078b0c4a619608089d760405160405180910390a260026000856000191660001916815260200190815260200160002060008082016000905560018201600090556002820160009055600382016000610b4a9190613511565b6004820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600582016000905560068201600090555050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610c4857600080fd5b505af1158015610c5c573d6000803e3d6000fd5b505050506040513d6020811015610c7257600080fd5b81019080805190602001909291905050501515610c8e57600080fd5b610c98565b600080fd5b5b5b6064610cda6040805190810160405280600f81526020017f64697370656e736174696f6e5063740000000000000000000000000000000000815250611108565b11151515610ce457fe5b6064610d246040805190810160405280601081526020017f7044697370656e736174696f6e50637400000000000000000000000000000000815250611108565b11151515610d2e57fe5b610e30600554610e22610d756040805190810160405280600f81526020017f7052657665616c53746167654c656e0000000000000000000000000000000000815250611108565b610e14610db66040805190810160405280600f81526020017f70436f6d6d697453746167654c656e0000000000000000000000000000000000815250611108565b610e06610df76040805190810160405280600e81526020017f704170706c7953746167654c656e000000000000000000000000000000000000815250611108565b4261348e90919063ffffffff16565b61348e90919063ffffffff16565b61348e90919063ffffffff16565b61348e90919063ffffffff16565b5060026000856000191660001916815260200190815260200160002060008082016000905560018201600090556002820160009055600382016000610e759190613511565b6004820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560058201600090556006820160009055505050505050565b6002602052806000526040600020600091509050806000015490806001015490806002015490806003018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610f725780601f10610f4757610100808354040283529160200191610f72565b820191906000526020600020905b815481529060010190602001808311610f5557829003601f168201915b5050505050908060040160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060050154908060060154905087565b60008060026000846000191660001916815260200190815260200160002060050154119050919050565b600080600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a6846040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561106c57600080fd5b505af1158015611080573d6000803e3d6000fd5b505050506040513d602081101561109657600080fd5b810190808051906020019092919050505014156110ce5760016000838152602001908152602001600020600201546002029050611103565b600160008381526020019081526020016000206000015460016000848152602001908152602001600020600201546002020390505b919050565b6000806000836040516020018082805190602001908083835b6020831015156111465780518252602082019150602081019050602083039250611121565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156111af578051825260208201915060208101905060208303925061118a565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020549050919050565b6000611204613559565b61120c6135ad565b60026000856000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112ea5780601f106112bf576101008083540402835291602001916112ea565b820191906000526020600020905b8154815290600101906020018083116112cd57829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600582015481526020016006820154815250509150600160008360200151815260200190815260200160002060a06040519081016040529081600082015481526020016001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820160149054906101000a900460ff161515151581526020016002820154815260200160038201548152505090506000826020015111801561142f57506000151581604001511515145b80156115075750600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ee68483083602001516040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b1580156114cb57600080fd5b505af11580156114df573d6000803e3d6000fd5b505050506040513d60208110156114f557600080fd5b81019080805190602001909291905050505b92505050919050565b600061151a613559565b60008060008060026000886000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156115fe5780601f106115d3576101008083540402835291602001916115fe565b820191906000526020600020905b8154815290600101906020018083116115e157829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016005820154815260200160068201548152505094508460400151935061168387610fae565b8015611693575060008560200151145b151561169e57600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166332ed3d6061171a6040805190810160405280600b81526020017f70566f746551756f72756d000000000000000000000000000000000000000000815250611108565b6117586040805190810160405280600f81526020017f70436f6d6d697453746167654c656e0000000000000000000000000000000000815250611108565b6117966040805190810160405280600f81526020017f7052657665616c53746167654c656e0000000000000000000000000000000000815250611108565b6040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018381526020018281526020019350505050602060405180830381600087803b1580156117f657600080fd5b505af115801561180a573d6000803e3d6000fd5b505050506040513d602081101561182057600080fd5b8101908080519060200190929190505050925060a0604051908101604052806118ac606461189e88611890606461188b6040805190810160405280601081526020017f7044697370656e736174696f6e50637400000000000000000000000000000000815250611108565b6134aa565b6134c390919063ffffffff16565b6134fb90919063ffffffff16565b81526020013373ffffffffffffffffffffffffffffffffffffffff1681526020016000151581526020018581526020016000815250600160008581526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010160146101000a81548160ff02191690831515021790555060608201518160020155608082015181600301559050508260026000896000191660001916815260200190815260200160002060010181905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330876040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015611a9857600080fd5b505af1158015611aac573d6000803e3d6000fd5b505050506040513d6020811015611ac257600080fd5b81019080805190602001909291905050501515611ade57600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636148fed5846040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060a060405180830381600087803b158015611b6f57600080fd5b505af1158015611b83573d6000803e3d6000fd5b505050506040513d60a0811015611b9957600080fd5b81019080805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919050505090915090505080925081935050503373ffffffffffffffffffffffffffffffffffffffff1687600019167fe94e3086c4bfe84acba4437b85a80fca3721dfc419d1f7afe4fa4e470e670b4885858560405180848152602001838152602001828152602001935050505060405180910390a38295505050505050919050565b600080600015156001600086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515141515611cc657600080fd5b600115156001600086815260200190815260200160002060010160149054906101000a900460ff161515141515611cfc57600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0693386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b158015611dc957600080fd5b505af1158015611ddd573d6000803e3d6000fd5b505050506040513d6020811015611df357600080fd5b81019080805190602001909291905050509150611e113385856120f4565b9050816001600086815260200190815260200160002060030160008282540392505081905550806001600086815260200190815260200160002060000160008282540392505081905550600180600086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff16847f6f4c982acc31b0af2cf1dc1556f21c0325d893782d65e83c68a5534a33f59957836040518082815260200191505060405180910390a3600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611fda57600080fd5b505af1158015611fee573d6000803e3d6000fd5b505050506040513d602081101561200457600080fd5b8101908080519060200190929190505050151561202057600080fd5b50505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010160149054906101000a900460ff16908060020154908060030154905085565b60006001600084815260200190815260200160002060040160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6000806000806001600087815260200190815260200160002060030154925060016000878152602001908152602001600020600001549150600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0698888886040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b1580156121f957600080fd5b505af115801561220d573d6000803e3d6000fd5b505050506040513d602081101561222357600080fd5b810190808051906020019092919050505090508282820281151561224357fe5b0493505050509392505050565b60008060006122936040805190810160405280600b81526020017f704d696e4465706f736974000000000000000000000000000000000000000000815250611108565b915084846040516020018083805190602001908083835b6020831015156122cf57805182526020820191506020810190506020830392506122aa565b6001836020036101000a038019825116818451168082178552505050505050905001828152602001925050506040516020818303038152906040526040518082805190602001908083835b60208310151561233f578051825260208201915060208101905060208303925061231a565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020905060405160200180807f64697370656e736174696f6e5063740000000000000000000000000000000000815250600f0190506040516020818303038152906040526040518082805190602001908083835b6020831015156123e357805182526020820191506020810190506020830392506123be565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916856040516020018082805190602001908083835b60208310151561244d5780518252602082019150602081019050602083039250612428565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156124b65780518252602082019150602081019050602083039250612491565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040518091039020600019161480612669575060405160200180807f7044697370656e736174696f6e5063740000000000000000000000000000000081525060100190506040516020818303038152906040526040518082805190602001908083835b602083101515612563578051825260208201915060208101905060208303925061253e565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916856040516020018082805190602001908083835b6020831015156125cd57805182526020820191506020810190506020830392506125a8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b6020831015156126365780518252602082019150602081019050602083039250612611565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916145b1561267f576064841115151561267e57600080fd5b5b61268881610fae565b15151561269457600080fd5b8361269e86611108565b141515156126ab57600080fd5b60e0604051908101604052806127076126f86040805190810160405280600e81526020017f704170706c7953746167654c656e000000000000000000000000000000000000815250611108565b4261348e90919063ffffffff16565b8152602001600081526020018381526020018681526020013373ffffffffffffffffffffffffffffffffffffffff16815260200161283d60055461282f6127826040805190810160405280600f81526020017f7052657665616c53746167654c656e0000000000000000000000000000000000815250611108565b6128216127c36040805190810160405280600f81526020017f70436f6d6d697453746167654c656e0000000000000000000000000000000000815250611108565b6128136128046040805190810160405280600e81526020017f704170706c7953746167654c656e000000000000000000000000000000000000815250611108565b4261348e90919063ffffffff16565b61348e90919063ffffffff16565b61348e90919063ffffffff16565b61348e90919063ffffffff16565b815260200185815250600260008360001916600019168152602001908152602001600020600082015181600001556020820151816001015560408201518160020155606082015181600301908051906020019061289b9291906135f5565b5060808201518160040160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060a0820151816005015560c08201518160060155905050600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156129f357600080fd5b505af1158015612a07573d6000803e3d6000fd5b505050506040513d6020811015612a1d57600080fd5b81019080805190602001909291905050501515612a3957600080fd5b3373ffffffffffffffffffffffffffffffffffffffff167fb25bdef16105f099e5c185f9c7fd969571e8e0caa3f7bd75409512fe0a41a60b868684866002600088600019166000191681526020019081526020016000206000015460405180806020018681526020018560001916600019168152602001848152602001838152602001828103825287818151815260200191508051906020019080838360005b83811015612af4578082015181840152602081019050612ad9565b50505050905090810190601f168015612b215780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390a2809250505092915050565b6000612b47613559565b60026000846000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612c255780601f10612bfa57610100808354040283529160200191612c25565b820191906000526020600020905b815481529060010190602001808311612c0857829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600582015481526020016006820154815250509050806000015142118015612cb057508060a0015142105b8015612cc0575060008160200151145b915050919050565b60006020528060005260406000206000915090505481565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b80600080846040516020018082805190602001908083835b602083101515612d695780518252602082019150602081019050602083039250612d44565b6001836020036101000a0380198251168184511680821785525050505050509050019150506040516020818303038152906040526040518082805190602001908083835b602083101515612dd25780518252602082019150602081019050602083039250612dad565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600019168152602001908152602001600020819055505050565b612e25613559565b60008060026000856000191660001916815260200190815260200160002060e06040519081016040529081600082015481526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015612f065780601f10612edb57610100808354040283529160200191612f06565b820191906000526020600020905b815481529060010190602001808311612ee957829003601f168201915b505050505081526020016004820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160058201548152602001600682015481525050925060016000846020015181526020019081526020016000209150612fa18360200151610fd8565b9050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a684602001516040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561303857600080fd5b505af115801561304c573d6000803e3d6000fd5b505050506040513d602081101561306257600080fd5b8101908080519060200190929190505050826003018190555060018260010160146101000a81548160ff021916908315150217905550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16634940318384602001516040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561312d57600080fd5b505af1158015613141573d6000803e3d6000fd5b505050506040513d602081101561315757600080fd5b8101908080519060200190929190505050156132f157428360a00151111561318c5761318b83606001518460c00151612d2c565b5b826020015184600019167fc4497224aa78dd50c9b3e344aab02596201ca1e6dca4057a91a6c02f83f4f6c184600001548560030154604051808381526020018281526020019250505060405180910390a3600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb8460800151836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156132a657600080fd5b505af11580156132ba573d6000803e3d6000fd5b505050506040513d60208110156132d057600080fd5b810190808051906020019092919050505015156132ec57600080fd5b613488565b826020015184600019167f362a12431f779a2baff4f77f75ba7960ae993a5c41b425df11f7fd0af2b9cbe684600001548560030154604051808381526020018281526020019250505060405180910390a3600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb600160008660200151815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561344157600080fd5b505af1158015613455573d6000803e3d6000fd5b505050506040513d602081101561346b57600080fd5b8101908080519060200190929190505050151561348757600080fd5b5b50505050565b600081830190508281101515156134a157fe5b80905092915050565b60008282111515156134b857fe5b818303905092915050565b6000808314156134d657600090506134f5565b81830290508183828115156134e757fe5b041415156134f157fe5b8090505b92915050565b6000818381151561350857fe5b04905092915050565b50805460018160011615610100020316600290046000825580601f106135375750613556565b601f0160209004906000526020600020908101906135559190613675565b5b50565b60e06040519081016040528060008152602001600081526020016000815260200160608152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152602001600081525090565b60a06040519081016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160001515815260200160008152602001600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061363657805160ff1916838001178555613664565b82800160010185558215613664579182015b82811115613663578251825591602001919060010190613648565b5b5090506136719190613675565b5090565b61369791905b8082111561369357600081600090555060010161367b565b5090565b905600a165627a7a72305820b56902304e03050844a67f14400cd7039bc3123b20270b9fd90d5971122555750029", + "sourceMap": "101:14625:5:-;;;1964:6;1940:30;;3216:957;8:9:-1;5:2;;;30:1;27;20:12;5:2;3216:957:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3612:10;3598:5;;:25;;;;;;;;;;;;;;;;;;3649:9;3629:6;;:30;;;;;;;;;;;;;;;;;;3666;;;;;;;;;;;;;;;;;;;3684:11;3666:3;;;:30;;;:::i;:::-;3702:32;;;;;;;;;;;;;;;;;;;3721:12;3702:3;;;:32;;;:::i;:::-;3740:36;;;;;;;;;;;;;;;;;;;3761:14;3740:3;;;:36;;;:::i;:::-;3782:38;;;;;;;;;;;;;;;;;;;3804:15;3782:3;;;:38;;;:::i;:::-;3826;;;;;;;;;;;;;;;;;;;3848:15;3826:3;;;:38;;;:::i;:::-;3870:40;;;;;;;;;;;;;;;;;;;3893:16;3870:3;;;:40;;;:::i;:::-;3916:38;;;;;;;;;;;;;;;;;;;3938:15;3916:3;;;:38;;;:::i;:::-;3960:40;;;;;;;;;;;;;;;;;;;3983:16;3960:3;;;:40;;;:::i;:::-;4006;;;;;;;;;;;;;;;;;;;4029:16;4006:3;;;:40;;;:::i;:::-;4052:42;;;;;;;;;;;;;;;;;;;4076:17;4052:3;;;:42;;;:::i;:::-;4100:30;;;;;;;;;;;;;;;;;;;4118:11;4100:3;;;:30;;;:::i;:::-;4136:32;;;;;;;;;;;;;;;;;;;4155:12;4136:3;;;:32;;;:::i;:::-;3216:957;;;;;;;;;;;;;;101:14625;;14614:110;14713:6;14668;:42;14702:5;14685:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;14685:23:5;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;14685:23:5;;;14675:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;14675:34:5;;;;;;;;;;;;;;;;14668:42;;;;;;;;;;;;;;;;;:51;;;;14614:110;;:::o;101:14625::-;;;;;;;", + "deployedSourceMap": "101:14625:5:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1940:30;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1940:30:5;;;;;;;;;;;;;;;;;;;;;;;7183:1608;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7183:1608:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1813:50;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1813:50:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1813:50:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11319:114;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11319:114:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12069:370;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12069:370:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12595:120;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12595:120:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11600:301;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11600:301:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5829:1059;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5829:1059:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9016:903;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9016:903:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1707:44;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1707:44:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12930:145;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12930:145:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10375:363;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10375:363:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4468:1220;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4468:1220:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10955:204;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10955:204:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1612:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1612:38:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1890:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1890:18:5;;;;;;;;;;;;;;;;;;;;;;;;;;;1912:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1912:24:5;;;;;;;;;;;;;;;;;;;;;;;;;;;1940:30;;;;:::o;7183:1608::-;7238:26;7291:17;7327:16;7267:9;:18;7277:7;7267:18;;;;;;;;;;;;;;;;;7238:47;;7311:4;:10;;;;;;;;;;;;7291:30;;7346:4;:12;;;7327:31;;7539:17;7548:7;7539:8;:17::i;:::-;7535:920;;;7727:26;7731:4;:9;;7727:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7742:4;:10;;;7727:3;:26::i;:::-;7784:7;7766:49;;;;7793:4;:9;;7804:4;:10;;;7766:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7830:9;:18;7840:7;7830:18;;;;;;;;;;;;;;;;;;7823:25;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7864:5;;;;;;;;;;;:14;;;7879:9;7890:11;7864:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7864:38:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7864:38:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7864:38:5;;;;;;;;;;;;;;;;7856:47;;;;;;;;7535:920;;;7920:31;7943:7;7920:22;:31::i;:::-;7916:539;;;8013:25;8030:7;8013:16;:25::i;:::-;7916:539;;;8061:4;:14;;;8055:3;:20;8051:404;;;8195:7;8178:25;;;;;;;;;;;;;8218:9;:18;8228:7;8218:18;;;;;;;;;;;;;;;;;;8211:25;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8252:5;;;;;;;;;;;:14;;;8267:9;8278:11;8252:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8252:38:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8252:38:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8252:38:5;;;;;;;;;;;;;;;;8244:47;;;;;;;;8051:404;;;8440:8;;;8051:404;7916:539;7535:920;8494:3;8468:22;;;;;;;;;;;;;;;;;;;:3;:22::i;:::-;:29;;8461:37;;;;;;8538:3;8511:23;;;;;;;;;;;;;;;;;;;:3;:23::i;:::-;:30;;8504:38;;;;;;8632:122;8744:9;;8632:100;8709:22;;;;;;;;;;;;;;;;;;;:3;:22::i;:::-;8632:65;8674:22;;;;;;;;;;;;;;;;;;;:3;:22::i;:::-;8632:30;8640:21;;;;;;;;;;;;;;;;;;;:3;:21::i;:::-;8632:3;:7;;:30;;;;:::i;:::-;:41;;:65;;;;:::i;:::-;:76;;:100;;;;:::i;:::-;:111;;:122;;;;:::i;:::-;;8768:9;:18;8778:7;8768:18;;;;;;;;;;;;;;;;;;8761:25;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7183:1608;;;;:::o;1813:50::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;11319:114::-;11377:4;11427:1;11396:9;:18;11406:7;11396:18;;;;;;;;;;;;;;;;;:28;;;:32;11389:39;;11319:114;;;:::o;12069:370::-;12140:4;12219:1;12156:6;;;;;;;;;;;:45;;;12202:12;12156:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12156:59:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12156:59:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12156:59:5;;;;;;;;;;;;;;;;:64;12152:195;;;12310:10;:24;12321:12;12310:24;;;;;;;;;;;:30;;;12306:1;:34;12299:41;;;;12152:195;12399:10;:24;12410:12;12399:24;;;;;;;;;;;:35;;;12365:10;:24;12376:12;12365:24;;;;;;;;;;;:30;;;12361:1;:34;12360:74;12353:81;;12069:370;;;;:::o;12595:120::-;12643:10;12668:6;:42;12702:5;12685:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;12685:23:5;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;12685:23:5;;;12675:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;12675:34:5;;;;;;;;;;;;;;;;12668:42;;;;;;;;;;;;;;;;;;12661:49;;12595:120;;;:::o;11600:301::-;11670:4;11682:25;;:::i;:::-;11734:26;;:::i;:::-;11710:9;:18;11720:7;11710:18;;;;;;;;;;;;;;;;;11682:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11763:10;:28;11774:4;:16;;;11763:28;;;;;;;;;;;11734:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11825:1;11806:4;:16;;;:20;:51;;;;;11852:5;11830:27;;:9;:18;;;:27;;;11806:51;:89;;;;;11861:6;;;;;;;;;;;:16;;;11878:4;:16;;;11861:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11861:34:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11861:34:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11861:34:5;;;;;;;;;;;;;;;;11806:89;11798:98;;11600:301;;;;;:::o;5829:1059::-;5899:16;5923:25;;:::i;:::-;5975:12;6086:11;6639:18;6663;5951:9;:18;5961:7;5951:18;;;;;;;;;;;;;;;;;5923:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5990:4;:12;;;5975:27;;6017:19;6028:7;6017:10;:19::i;:::-;:44;;;;;6060:1;6040:4;:16;;;:21;6017:44;6009:53;;;;;;;;6100:6;;;;;;;;;;;:16;;;6124:18;;;;;;;;;;;;;;;;;;;:3;:18::i;:::-;6150:22;;;;;;;;;;;;;;;;;;;:3;:22::i;:::-;6180;;;;;;;;;;;;;;;;;;;:3;:22::i;:::-;6100:108;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6100:108:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6100:108:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6100:108:5;;;;;;;;;;;;;;;;6086:122;;6236:200;;;;;;;;;6296:64;6356:3;6296:55;6343:7;6296:42;6309:3;6314:23;;;;;;;;;;;;;;;;;;;:3;:23::i;:::-;6296:12;:42::i;:::-;:46;;:55;;;;:::i;:::-;:59;;:64;;;;:::i;:::-;6236:200;;;;6266:10;6236:200;;;;;;6400:5;6236:200;;;;;;6375:7;6236:200;;;;6428:1;6236:200;;;6215:10;:18;6226:6;6215:18;;;;;;;;;;;:221;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6476:6;6443:9;:18;6453:7;6443:18;;;;;;;;;;;;;;;;;:30;;:39;;;;6586:5;;;;;;;;;;;:18;;;6605:10;6617:4;6623:7;6586:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6586:45:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6586:45:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6586:45:5;;;;;;;;;;;;;;;;6578:54;;;;;;;;6721:6;;;;;;;;;;;:14;;;6736:6;6721:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6721:22:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6721:22:5;;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;6721:22:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6687:56;;;;;;;;;;;;;;6847:10;6755:108;;6776:7;6755:108;;;;6791:6;6805:13;6826;6755:108;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6877:6;6870:13;;5829:1059;;;;;;;;:::o;9016:903::-;9303:16;9387:11;9234:5;9182:57;;:10;:24;9193:12;9182:24;;;;;;;;;;;:36;;:48;9219:10;9182:48;;;;;;;;;;;;;;;;;;;;;;;;;:57;;;9174:66;;;;;;;;9291:4;9254:41;;:10;:24;9265:12;9254:24;;;;;;;;;;;:33;;;;;;;;;;;;:41;;;9246:50;;;;;;;;9322:6;;;;;;;;;;;:26;;;9349:10;9361:12;9375:5;9322:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9322:59:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9322:59:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9322:59:5;;;;;;;;;;;;;;;;9303:78;;9401:44;9413:10;9425:12;9439:5;9401:11;:44::i;:::-;9387:58;;9632:11;9590:10;:24;9601:12;9590:24;;;;;;;;;;;:38;;;:53;;;;;;;;;;;9688:6;9649:10;:24;9660:12;9649:24;;;;;;;;;;;:35;;;:45;;;;;;;;;;;9801:4;9750:10;:24;9761:12;9750:24;;;;;;;;;;;:36;;:48;9787:10;9750:48;;;;;;;;;;;;;;;;:55;;;;;;;;;;;;;;;;;;9854:10;9817:48;;9832:12;9817:48;9846:6;9817:48;;;;;;;;;;;;;;;;;;9879:5;;;;;;;;;;;:14;;;9894:10;9906:6;9879:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9879:34:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9879:34:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9879:34:5;;;;;;;;;;;;;;;;9871:43;;;;;;;;9016:903;;;;:::o;1707:44::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;12930:145::-;13007:4;13026:10;:24;13037:12;13026:24;;;;;;;;;;;:36;;:44;13063:6;13026:44;;;;;;;;;;;;;;;;;;;;;;;;;13019:51;;12930:145;;;;:::o;10375:363::-;10466:4;10480:18;10545:15;10604:16;10501:10;:24;10512:12;10501:24;;;;;;;;;;;:38;;;10480:59;;10563:10;:24;10574:12;10563:24;;;;;;;;;;;:35;;;10545:53;;10623:6;;;;;;;;;;;:26;;;10650:6;10658:12;10672:5;10623:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10623:55:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10623:55:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10623:55:5;;;;;;;;;;;;;;;;10604:74;;10720:13;10706:10;10692:11;:24;10691:42;;;;;;;;10684:49;;10375:363;;;;;;;;:::o;4468:1220::-;4546:7;4561:12;4600:14;4576:18;;;;;;;;;;;;;;;;;;;:3;:18::i;:::-;4561:33;;4644:5;4651:6;4627:31;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4627:31:5;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;4627:31:5;;;4617:42;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4617:42:5;;;;;;;;;;;;;;;;4600:59;;4718:35;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;4718:35:5;;;4708:46;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4708:46:5;;;;;;;;;;;;;;;;4670:84;;;4697:5;4680:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4680:23:5;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;4680:23:5;;;4670:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4670:34:5;;;;;;;;;;;;;;;;:84;;;;:180;;;;4813:36;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;4813:36:5;;;4803:47;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4803:47:5;;;;;;;;;;;;;;;;4765:85;;;4792:5;4775:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4775:23:5;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;4775:23:5;;;4765:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4765:34:5;;;;;;;;;;;;;;;;:85;;;;4670:180;4666:223;;;4878:3;4868:6;:13;;4860:22;;;;;;;;4666:223;4904:18;4915:6;4904:10;:18::i;:::-;4903:19;4895:28;;;;;;;;4981:6;4967:10;4971:5;4967:3;:10::i;:::-;:20;;4959:29;;;;;;;;5089:328;;;;;;;;;5122:30;5130:21;;;;;;;;;;;;;;;;;;;:3;:21::i;:::-;5122:3;:7;;:30;;;;:::i;:::-;5089:328;;;;5173:1;5089:328;;;;5191:7;5089:328;;;;5212:5;5089:328;;;;5232:10;5089:328;;;;;;5261:128;5379:9;;5261:104;5342:22;;;;;;;;;;;;;;;;;;;:3;:22::i;:::-;5261:67;5305:22;;;;;;;;;;;;;;;;;;;:3;:22::i;:::-;5261:30;5269:21;;;;;;;;;;;;;;;;;;;:3;:21::i;:::-;5261:3;:7;;:30;;;;:::i;:::-;:43;;:67;;;;:::i;:::-;:80;;:104;;;;:::i;:::-;:117;;:128;;;;:::i;:::-;5089:328;;;;5404:6;5089:328;;;5069:9;:17;5079:6;5069:17;;;;;;;;;;;;;;;;;:348;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5432:5;;;;;;;;;;;:18;;;5451:10;5463:4;5469:7;5432:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5432:45:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5432:45:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5432:45:5;;;;;;;;;;;;;;;;5424:54;;;;;;;;5647:10;5521:142;;;5556:5;5569:6;5583;5597:7;5612:9;:17;5622:6;5612:17;;;;;;;;;;;;;;;;;:27;;;5521:142;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;5521:142:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5677:6;5670:13;;4468:1220;;;;;;:::o;10955:204::-;11011:4;11023:25;;:::i;:::-;11051:9;:18;11061:7;11051:18;;;;;;;;;;;;;;;;;11023:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11090:4;:14;;;11084:3;:20;:44;;;;;11114:4;:14;;;11108:3;:20;11084:44;:69;;;;;11152:1;11132:4;:16;;;:21;11084:69;11076:78;;10955:204;;;;:::o;1612:38::-;;;;;;;;;;;;;;;;;:::o;1890:18::-;;;;;;;;;;;;;:::o;1912:24::-;;;;;;;;;;;;;:::o;14614:110::-;14713:6;14668;:42;14702:5;14685:23;;;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;14685:23:5;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;14685:23:5;;;14675:34;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;14675:34:5;;;;;;;;;;;;;;;;14668:42;;;;;;;;;;;;;;;;;:51;;;;14614:110;;:::o;13352:1076::-;13409:25;;:::i;:::-;13461:27;13611:11;13437:9;:18;13447:7;13437:18;;;;;;;;;;;;;;;;;13409:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13491:10;:28;13502:4;:16;;;13491:28;;;;;;;;;;;13461:58;;13625:39;13647:4;:16;;;13625:21;:39::i;:::-;13611:53;;13697:6;;;;;;;;;;;:45;;;13743:4;:16;;;13697:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13697:63:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13697:63:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13697:63:5;;;;;;;;;;;;;;;;13671:9;:23;;:89;;;;13787:4;13766:9;:18;;;:25;;;;;;;;;;;;;;;;;;13802:6;;;;;;;;;;;:15;;;13818:4;:16;;;13802:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13802:33:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13802:33:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13802:33:5;;;;;;;;;;;;;;;;13798:626;;;13890:3;13873:4;:14;;;:20;13869:71;;;13905:26;13909:4;:9;;;13920:4;:10;;;13905:3;:26::i;:::-;13869:71;13995:4;:16;;;13978:7;13952:130;;;;14021:9;:20;;;14051:9;:23;;;13952:130;;;;;;;;;;;;;;;;;;;;;;;;14099:5;;;;;;;;;;;:14;;;14114:4;:10;;;14126:6;14099:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14099:34:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14099:34:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14099:34:5;;;;;;;;;;;;;;;;14091:43;;;;;;;;13798:626;;;14249:4;:16;;;14232:7;14203:133;;;;14275:9;:20;;;14305:9;:23;;;14203:133;;;;;;;;;;;;;;;;;;;;;;;;14353:5;;;;;;;;;;;:14;;;14368:10;:28;14379:4;:16;;;14368:28;;;;;;;;;;;:39;;;;;;;;;;;;14409:6;14353:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14353:63:5;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14353:63:5;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14353:63:5;;;;;;;;;;;;;;;;14345:72;;;;;;;;13798:626;13352:1076;;;;:::o;1213:123:7:-;1271:9;1296:1;1292;:5;1288:9;;1315:1;1310;:6;;1303:14;;;;;;1330:1;1323:8;;1213:123;;;;:::o;1041:110::-;1099:7;1126:1;1121;:6;;1114:14;;;;;;1145:1;1141;:5;1134:12;;1041:110;;;;:::o;202:373::-;260:9;491:1;486;:6;482:35;;;509:1;502:8;;;;482:35;531:1;527;:5;523:9;;554:1;549;545;:5;;;;;;;;:10;538:18;;;;;;569:1;562:8;;202:373;;;;;:::o;657:272::-;715:7;923:1;919;:5;;;;;;;;912:12;;657:272;;;;:::o;101:14625:5:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", + "source": "pragma solidity 0.4.24;\n\nimport \"./PLCRVoting.sol\";\nimport \"./ERC20.sol\";\nimport \"./SafeMath.sol\";\n\n\ncontract Parameterizer {\n\n // ------\n // EVENTS\n // ------\n\n event _ReparameterizationProposal(string name, uint value, bytes32 propID, uint deposit, uint appEndDate, address indexed proposer);\n event _NewChallenge(bytes32 indexed propID, uint challengeID, uint commitEndDate, uint revealEndDate, address indexed challenger);\n event _ProposalAccepted(bytes32 indexed propID, string name, uint value);\n event _ProposalExpired(bytes32 indexed propID);\n event _ChallengeSucceeded(bytes32 indexed propID, uint indexed challengeID, uint rewardPool, uint totalTokens);\n event _ChallengeFailed(bytes32 indexed propID, uint indexed challengeID, uint rewardPool, uint totalTokens);\n event _RewardClaimed(uint indexed challengeID, uint reward, address indexed voter);\n\n\n // ------\n // DATA STRUCTURES\n // ------\n\n using SafeMath for uint;\n\n struct ParamProposal {\n uint appExpiry;\n uint challengeID;\n uint deposit;\n string name;\n address owner;\n uint processBy;\n uint value;\n }\n\n struct Challenge {\n uint rewardPool; // (remaining) pool of tokens distributed amongst winning voters\n address challenger; // owner of Challenge\n bool resolved; // indication of if challenge is resolved\n uint stake; // number of tokens at risk for either party during challenge\n uint winningTokens; // (remaining) amount of tokens used for voting by the winning side\n mapping(address => bool) tokenClaims;\n }\n\n // ------\n // STATE\n // ------\n\n mapping(bytes32 => uint) public params;\n\n // maps challengeIDs to associated challenge data\n mapping(uint => Challenge) public challenges;\n\n // maps pollIDs to intended data change if poll passes\n mapping(bytes32 => ParamProposal) public proposals;\n\n // Global Variables\n ERC20 public token;\n PLCRVoting public voting;\n uint public PROCESSBY = 604800; // 7 days\n\n // ------------\n // CONSTRUCTOR\n // ------------\n\n /**\n @dev constructor\n @param _tokenAddr address of the token which parameterizes this system\n @param _plcrAddr address of a PLCR voting contract for the provided token\n @param _minDeposit minimum deposit for listing to be whitelisted\n @param _pMinDeposit minimum deposit to propose a reparameterization\n @param _applyStageLen period over which applicants wait to be whitelisted\n @param _pApplyStageLen period over which reparmeterization proposals wait to be processed\n @param _dispensationPct percentage of losing party's deposit distributed to winning party\n @param _pDispensationPct percentage of losing party's deposit distributed to winning party in parameterizer\n @param _commitStageLen length of commit period for voting\n @param _pCommitStageLen length of commit period for voting in parameterizer\n @param _revealStageLen length of reveal period for voting\n @param _pRevealStageLen length of reveal period for voting in parameterizer\n @param _voteQuorum type of majority out of 100 necessary for vote success\n @param _pVoteQuorum type of majority out of 100 necessary for vote success in parameterizer\n */\n constructor(\n address _tokenAddr,\n address _plcrAddr,\n uint _minDeposit,\n uint _pMinDeposit,\n uint _applyStageLen,\n uint _pApplyStageLen,\n uint _commitStageLen,\n uint _pCommitStageLen,\n uint _revealStageLen,\n uint _pRevealStageLen,\n uint _dispensationPct,\n uint _pDispensationPct,\n uint _voteQuorum,\n uint _pVoteQuorum\n ) public\n {\n token = ERC20(_tokenAddr);\n voting = PLCRVoting(_plcrAddr);\n\n set(\"minDeposit\", _minDeposit);\n set(\"pMinDeposit\", _pMinDeposit);\n set(\"applyStageLen\", _applyStageLen);\n set(\"pApplyStageLen\", _pApplyStageLen);\n set(\"commitStageLen\", _commitStageLen);\n set(\"pCommitStageLen\", _pCommitStageLen);\n set(\"revealStageLen\", _revealStageLen);\n set(\"pRevealStageLen\", _pRevealStageLen);\n set(\"dispensationPct\", _dispensationPct);\n set(\"pDispensationPct\", _pDispensationPct);\n set(\"voteQuorum\", _voteQuorum);\n set(\"pVoteQuorum\", _pVoteQuorum);\n }\n\n // -----------------------\n // TOKEN HOLDER INTERFACE\n // -----------------------\n\n /**\n @notice propose a reparamaterization of the key _name's value to _value.\n @param _name the name of the proposed param to be set\n @param _value the proposed value to set the param to be set\n */\n function proposeReparameterization(string _name, uint _value) public returns (bytes32) {\n uint deposit = get(\"pMinDeposit\");\n bytes32 propID = keccak256(abi.encodePacked(_name, _value));\n\n if (keccak256(abi.encodePacked(_name)) == keccak256(abi.encodePacked(\"dispensationPct\")) ||\n keccak256(abi.encodePacked(_name)) == keccak256(abi.encodePacked(\"pDispensationPct\"))) {\n require(_value <= 100);\n }\n\n require(!propExists(propID)); // Forbid duplicate proposals\n require(get(_name) != _value); // Forbid NOOP reparameterizations\n\n // attach name and value to pollID\n proposals[propID] = ParamProposal({\n appExpiry: now.add(get(\"pApplyStageLen\")),\n challengeID: 0,\n deposit: deposit,\n name: _name,\n owner: msg.sender,\n processBy: now.add(get(\"pApplyStageLen\"))\n .add(get(\"pCommitStageLen\"))\n .add(get(\"pRevealStageLen\"))\n .add(PROCESSBY),\n value: _value\n });\n\n require(token.transferFrom(msg.sender, this, deposit)); // escrow tokens (deposit amt)\n\n emit _ReparameterizationProposal(\n _name,\n _value,\n propID,\n deposit,\n proposals[propID].appExpiry,\n msg.sender\n );\n\n return propID;\n }\n\n /**\n @notice challenge the provided proposal ID, and put tokens at stake to do so.\n @param _propID the proposal ID to challenge\n */\n function challengeReparameterization(bytes32 _propID) public returns (uint challengeID) {\n ParamProposal memory prop = proposals[_propID];\n uint deposit = prop.deposit;\n\n require(propExists(_propID) && prop.challengeID == 0);\n\n //start poll\n uint pollID = voting.startPoll(\n get(\"pVoteQuorum\"),\n get(\"pCommitStageLen\"),\n get(\"pRevealStageLen\")\n );\n\n challenges[pollID] = Challenge({\n challenger: msg.sender,\n rewardPool: SafeMath.sub(100, get(\"pDispensationPct\")).mul(deposit).div(100),\n stake: deposit,\n resolved: false,\n winningTokens: 0\n });\n\n proposals[_propID].challengeID = pollID; // update listing to store most recent challenge\n\n //take tokens from challenger\n require(token.transferFrom(msg.sender, this, deposit));\n\n uint commitEndDate;\n uint revealEndDate;\n (commitEndDate, revealEndDate,) = voting.pollMap(pollID);\n\n emit _NewChallenge(\n _propID,\n pollID,\n commitEndDate,\n revealEndDate,\n msg.sender\n );\n\n return pollID;\n }\n\n /**\n @notice for the provided proposal ID, set it, resolve its challenge, or delete it depending on whether it can be set, has a challenge which can be resolved, or if its \"process by\" date has passed\n @param _propID the proposal ID to make a determination and state transition for\n */\n function processProposal(bytes32 _propID) public {\n ParamProposal storage prop = proposals[_propID];\n address propOwner = prop.owner;\n uint propDeposit = prop.deposit;\n\n // Before any token transfers, deleting the proposal will ensure that if reentrancy occurs the\n // prop.owner and prop.deposit will be 0, thereby preventing theft\n if (canBeSet(_propID)) {\n // There is no challenge against the proposal. The processBy date for the proposal has not\n // passed, but the proposal's appExpirty date has passed.\n set(prop.name, prop.value);\n emit _ProposalAccepted(_propID, prop.name, prop.value);\n delete proposals[_propID];\n require(token.transfer(propOwner, propDeposit));\n } else if (challengeCanBeResolved(_propID)) {\n // There is a challenge against the proposal.\n resolveChallenge(_propID);\n } else if (now > prop.processBy) {\n // There is no challenge against the proposal, but the processBy date has passed.\n emit _ProposalExpired(_propID);\n delete proposals[_propID];\n require(token.transfer(propOwner, propDeposit));\n } else {\n // There is no challenge against the proposal, and neither the appExpiry date nor the\n // processBy date has passed.\n revert();\n }\n\n assert(get(\"dispensationPct\") <= 100);\n assert(get(\"pDispensationPct\") <= 100);\n\n // verify that future proposal appExpiry and processBy times will not overflow\n now.add(get(\"pApplyStageLen\"))\n .add(get(\"pCommitStageLen\"))\n .add(get(\"pRevealStageLen\"))\n .add(PROCESSBY);\n\n delete proposals[_propID];\n }\n\n /**\n @notice claim the tokens owed for the msg.sender in the provided challenge\n @param _challengeID the challenge ID to claim tokens for\n @param _salt the salt used to vote in the challenge being withdrawn for\n */\n function claimReward(uint _challengeID, uint _salt) public {\n // ensure voter has not already claimed tokens and challenge results have been processed\n require(challenges[_challengeID].tokenClaims[msg.sender] == false);\n require(challenges[_challengeID].resolved == true);\n\n uint voterTokens = voting.getNumPassingTokens(msg.sender, _challengeID, _salt);\n uint reward = voterReward(msg.sender, _challengeID, _salt);\n\n // subtract voter's information to preserve the participation ratios of other voters\n // compared to the remaining pool of rewards\n challenges[_challengeID].winningTokens -= voterTokens;\n challenges[_challengeID].rewardPool -= reward;\n\n // ensures a voter cannot claim tokens again\n challenges[_challengeID].tokenClaims[msg.sender] = true;\n\n emit _RewardClaimed(_challengeID, reward, msg.sender);\n require(token.transfer(msg.sender, reward));\n }\n\n // --------\n // GETTERS\n // --------\n\n /**\n @dev Calculates the provided voter's token reward for the given poll.\n @param _voter The address of the voter whose reward balance is to be returned\n @param _challengeID The ID of the challenge the voter's reward is being calculated for\n @param _salt The salt of the voter's commit hash in the given poll\n @return The uint indicating the voter's reward\n */\n function voterReward(address _voter, uint _challengeID, uint _salt)\n public view returns (uint)\n {\n uint winningTokens = challenges[_challengeID].winningTokens;\n uint rewardPool = challenges[_challengeID].rewardPool;\n uint voterTokens = voting.getNumPassingTokens(_voter, _challengeID, _salt);\n return (voterTokens * rewardPool) / winningTokens;\n }\n\n /**\n @notice Determines whether a proposal passed its application stage without a challenge\n @param _propID The proposal ID for which to determine whether its application stage passed without a challenge\n */\n function canBeSet(bytes32 _propID) view public returns (bool) {\n ParamProposal memory prop = proposals[_propID];\n\n return (now > prop.appExpiry && now < prop.processBy && prop.challengeID == 0);\n }\n\n /**\n @notice Determines whether a proposal exists for the provided proposal ID\n @param _propID The proposal ID whose existance is to be determined\n */\n function propExists(bytes32 _propID) view public returns (bool) {\n return proposals[_propID].processBy > 0;\n }\n\n /**\n @notice Determines whether the provided proposal ID has a challenge which can be resolved\n @param _propID The proposal ID whose challenge to inspect\n */\n function challengeCanBeResolved(bytes32 _propID) view public returns (bool) {\n ParamProposal memory prop = proposals[_propID];\n Challenge memory challenge = challenges[prop.challengeID];\n\n return (prop.challengeID > 0 && challenge.resolved == false && voting.pollEnded(prop.challengeID));\n }\n\n /**\n @notice Determines the number of tokens to awarded to the winning party in a challenge\n @param _challengeID The challengeID to determine a reward for\n */\n function challengeWinnerReward(uint _challengeID) public view returns (uint) {\n if (voting.getTotalNumberOfTokensForWinningOption(_challengeID) == 0) {\n // Edge case, nobody voted, give all tokens to the challenger.\n return 2 * challenges[_challengeID].stake;\n }\n\n return (2 * challenges[_challengeID].stake) - challenges[_challengeID].rewardPool;\n }\n\n /**\n @notice gets the parameter keyed by the provided name value from the params mapping\n @param _name the key whose value is to be determined\n */\n function get(string _name) public view returns (uint value) {\n return params[keccak256(abi.encodePacked(_name))];\n }\n\n /**\n @dev Getter for Challenge tokenClaims mappings\n @param _challengeID The challengeID to query\n @param _voter The voter whose claim status to query for the provided challengeID\n */\n function tokenClaims(uint _challengeID, address _voter) public view returns (bool) {\n return challenges[_challengeID].tokenClaims[_voter];\n }\n\n // ----------------\n // PRIVATE FUNCTIONS\n // ----------------\n\n /**\n @dev resolves a challenge for the provided _propID. It must be checked in advance whether the _propID has a challenge on it\n @param _propID the proposal ID whose challenge is to be resolved.\n */\n function resolveChallenge(bytes32 _propID) private {\n ParamProposal memory prop = proposals[_propID];\n Challenge storage challenge = challenges[prop.challengeID];\n\n // winner gets back their full staked deposit, and dispensationPct*loser's stake\n uint reward = challengeWinnerReward(prop.challengeID);\n\n challenge.winningTokens = voting.getTotalNumberOfTokensForWinningOption(prop.challengeID);\n challenge.resolved = true;\n\n if (voting.isPassed(prop.challengeID)) { // The challenge failed\n if (prop.processBy > now) {\n set(prop.name, prop.value);\n }\n emit _ChallengeFailed(\n _propID,\n prop.challengeID,\n challenge.rewardPool,\n challenge.winningTokens\n );\n\n require(token.transfer(prop.owner, reward));\n } else { // The challenge succeeded or nobody voted\n emit _ChallengeSucceeded(\n _propID,\n prop.challengeID,\n challenge.rewardPool,\n challenge.winningTokens\n );\n\n require(token.transfer(challenges[prop.challengeID].challenger, reward));\n }\n }\n\n /**\n @dev sets the param keted by the provided name to the provided value\n @param _name the name of the param to be set\n @param _value the value to set the param to be set\n */\n function set(string _name, uint _value) private {\n params[keccak256(abi.encodePacked(_name))] = _value;\n }\n}\n", + "sourcePath": "/home/rob/Github/computable/contracts/Parameterizer.sol", "ast": { - "absolutePath": "/home/rbharath/computable/contracts/Parameterizer.sol", + "absolutePath": "/home/rob/Github/computable/contracts/Parameterizer.sol", "exportedSymbols": { "Parameterizer": [ - 1003 + 2490 ] }, - "id": 1004, + "id": 2491, "nodeType": "SourceUnit", "nodes": [ { - "id": 7, + "id": 1473, "literals": [ "solidity", "0.4", ".24" ], "nodeType": "PragmaDirective", - "src": "0:23:1" + "src": "0:23:5" }, { - "absolutePath": "plcrvoting/PLCRVoting.sol", - "file": "plcrvoting/PLCRVoting.sol", - "id": 8, + "absolutePath": "/home/rob/Github/computable/contracts/PLCRVoting.sol", + "file": "./PLCRVoting.sol", + "id": 1474, "nodeType": "ImportDirective", - "scope": 1004, - "sourceUnit": 3489, - "src": "25:35:1", + "scope": 2491, + "sourceUnit": 1472, + "src": "25:26:5", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "tokens/eip20/EIP20Interface.sol", - "file": "tokens/eip20/EIP20Interface.sol", - "id": 9, + "absolutePath": "/home/rob/Github/computable/contracts/ERC20.sol", + "file": "./ERC20.sol", + "id": 1475, "nodeType": "ImportDirective", - "scope": 1004, - "sourceUnit": 3783, - "src": "61:41:1", + "scope": 2491, + "sourceUnit": 409, + "src": "52:21:5", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "zeppelin/math/SafeMath.sol", - "file": "zeppelin/math/SafeMath.sol", - "id": 10, + "absolutePath": "/home/rob/Github/computable/contracts/SafeMath.sol", + "file": "./SafeMath.sol", + "id": 1476, "nodeType": "ImportDirective", - "scope": 1004, - "sourceUnit": 3878, - "src": "103:36:1", + "scope": 2491, + "sourceUnit": 3688, + "src": "74:24:5", "symbolAliases": [], "unitAlias": "" }, @@ -667,9 +667,9 @@ "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 1003, + "id": 2490, "linearizedBaseContracts": [ - 1003 + 2490 ], "name": "Parameterizer", "nodeType": "ContractDefinition", @@ -677,21 +677,21 @@ { "anonymous": false, "documentation": null, - "id": 24, + "id": 1490, "name": "_ReparameterizationProposal", "nodeType": "EventDefinition", "parameters": { - "id": 23, + "id": 1489, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 12, + "id": 1478, "indexed": false, "name": "name", "nodeType": "VariableDeclaration", - "scope": 24, - "src": "241:11:1", + "scope": 1490, + "src": "200:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -699,10 +699,10 @@ "typeString": "string" }, "typeName": { - "id": 11, + "id": 1477, "name": "string", "nodeType": "ElementaryTypeName", - "src": "241:6:1", + "src": "200:6:5", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -713,12 +713,12 @@ }, { "constant": false, - "id": 14, + "id": 1480, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 24, - "src": "254:10:1", + "scope": 1490, + "src": "213:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -726,10 +726,10 @@ "typeString": "uint256" }, "typeName": { - "id": 13, + "id": 1479, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "254:4:1", + "src": "213:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -740,12 +740,12 @@ }, { "constant": false, - "id": 16, + "id": 1482, "indexed": false, "name": "propID", "nodeType": "VariableDeclaration", - "scope": 24, - "src": "266:14:1", + "scope": 1490, + "src": "225:14:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -753,10 +753,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 15, + "id": 1481, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "266:7:1", + "src": "225:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -767,12 +767,12 @@ }, { "constant": false, - "id": 18, + "id": 1484, "indexed": false, "name": "deposit", "nodeType": "VariableDeclaration", - "scope": 24, - "src": "282:12:1", + "scope": 1490, + "src": "241:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -780,10 +780,10 @@ "typeString": "uint256" }, "typeName": { - "id": 17, + "id": 1483, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "282:4:1", + "src": "241:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -794,12 +794,12 @@ }, { "constant": false, - "id": 20, + "id": 1486, "indexed": false, "name": "appEndDate", "nodeType": "VariableDeclaration", - "scope": 24, - "src": "296:15:1", + "scope": 1490, + "src": "255:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -807,10 +807,10 @@ "typeString": "uint256" }, "typeName": { - "id": 19, + "id": 1485, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "296:4:1", + "src": "255:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -821,12 +821,12 @@ }, { "constant": false, - "id": 22, + "id": 1488, "indexed": true, "name": "proposer", "nodeType": "VariableDeclaration", - "scope": 24, - "src": "313:24:1", + "scope": 1490, + "src": "272:24:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -834,10 +834,10 @@ "typeString": "address" }, "typeName": { - "id": 21, + "id": 1487, "name": "address", "nodeType": "ElementaryTypeName", - "src": "313:7:1", + "src": "272:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -847,28 +847,28 @@ "visibility": "internal" } ], - "src": "240:98:1" + "src": "199:98:5" }, - "src": "207:132:1" + "src": "166:132:5" }, { "anonymous": false, "documentation": null, - "id": 36, + "id": 1502, "name": "_NewChallenge", "nodeType": "EventDefinition", "parameters": { - "id": 35, + "id": 1501, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26, + "id": 1492, "indexed": true, "name": "propID", "nodeType": "VariableDeclaration", - "scope": 36, - "src": "362:22:1", + "scope": 1502, + "src": "321:22:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -876,10 +876,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 25, + "id": 1491, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "362:7:1", + "src": "321:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -890,12 +890,12 @@ }, { "constant": false, - "id": 28, + "id": 1494, "indexed": false, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 36, - "src": "386:16:1", + "scope": 1502, + "src": "345:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -903,10 +903,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27, + "id": 1493, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "386:4:1", + "src": "345:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -917,12 +917,12 @@ }, { "constant": false, - "id": 30, + "id": 1496, "indexed": false, "name": "commitEndDate", "nodeType": "VariableDeclaration", - "scope": 36, - "src": "404:18:1", + "scope": 1502, + "src": "363:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -930,10 +930,10 @@ "typeString": "uint256" }, "typeName": { - "id": 29, + "id": 1495, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "404:4:1", + "src": "363:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -944,12 +944,12 @@ }, { "constant": false, - "id": 32, + "id": 1498, "indexed": false, "name": "revealEndDate", "nodeType": "VariableDeclaration", - "scope": 36, - "src": "424:18:1", + "scope": 1502, + "src": "383:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -957,10 +957,10 @@ "typeString": "uint256" }, "typeName": { - "id": 31, + "id": 1497, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "424:4:1", + "src": "383:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -971,12 +971,12 @@ }, { "constant": false, - "id": 34, + "id": 1500, "indexed": true, "name": "challenger", "nodeType": "VariableDeclaration", - "scope": 36, - "src": "444:26:1", + "scope": 1502, + "src": "403:26:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -984,10 +984,10 @@ "typeString": "address" }, "typeName": { - "id": 33, + "id": 1499, "name": "address", "nodeType": "ElementaryTypeName", - "src": "444:7:1", + "src": "403:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -997,28 +997,28 @@ "visibility": "internal" } ], - "src": "361:110:1" + "src": "320:110:5" }, - "src": "342:130:1" + "src": "301:130:5" }, { "anonymous": false, "documentation": null, - "id": 44, + "id": 1510, "name": "_ProposalAccepted", "nodeType": "EventDefinition", "parameters": { - "id": 43, + "id": 1509, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 38, + "id": 1504, "indexed": true, "name": "propID", "nodeType": "VariableDeclaration", - "scope": 44, - "src": "499:22:1", + "scope": 1510, + "src": "458:22:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1026,10 +1026,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 37, + "id": 1503, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "499:7:1", + "src": "458:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1040,12 +1040,12 @@ }, { "constant": false, - "id": 40, + "id": 1506, "indexed": false, "name": "name", "nodeType": "VariableDeclaration", - "scope": 44, - "src": "523:11:1", + "scope": 1510, + "src": "482:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1053,10 +1053,10 @@ "typeString": "string" }, "typeName": { - "id": 39, + "id": 1505, "name": "string", "nodeType": "ElementaryTypeName", - "src": "523:6:1", + "src": "482:6:5", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1067,12 +1067,12 @@ }, { "constant": false, - "id": 42, + "id": 1508, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 44, - "src": "536:10:1", + "scope": 1510, + "src": "495:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1080,10 +1080,10 @@ "typeString": "uint256" }, "typeName": { - "id": 41, + "id": 1507, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "536:4:1", + "src": "495:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1093,28 +1093,28 @@ "visibility": "internal" } ], - "src": "498:49:1" + "src": "457:49:5" }, - "src": "475:73:1" + "src": "434:73:5" }, { "anonymous": false, "documentation": null, - "id": 48, + "id": 1514, "name": "_ProposalExpired", "nodeType": "EventDefinition", "parameters": { - "id": 47, + "id": 1513, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 46, + "id": 1512, "indexed": true, "name": "propID", "nodeType": "VariableDeclaration", - "scope": 48, - "src": "574:22:1", + "scope": 1514, + "src": "533:22:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1122,10 +1122,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 45, + "id": 1511, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "574:7:1", + "src": "533:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1135,28 +1135,28 @@ "visibility": "internal" } ], - "src": "573:24:1" + "src": "532:24:5" }, - "src": "551:47:1" + "src": "510:47:5" }, { "anonymous": false, "documentation": null, - "id": 58, + "id": 1524, "name": "_ChallengeSucceeded", "nodeType": "EventDefinition", "parameters": { - "id": 57, + "id": 1523, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 50, + "id": 1516, "indexed": true, "name": "propID", "nodeType": "VariableDeclaration", - "scope": 58, - "src": "627:22:1", + "scope": 1524, + "src": "586:22:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1164,10 +1164,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 49, + "id": 1515, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "627:7:1", + "src": "586:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1178,12 +1178,12 @@ }, { "constant": false, - "id": 52, + "id": 1518, "indexed": true, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 58, - "src": "651:24:1", + "scope": 1524, + "src": "610:24:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1191,10 +1191,10 @@ "typeString": "uint256" }, "typeName": { - "id": 51, + "id": 1517, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "651:4:1", + "src": "610:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1205,12 +1205,12 @@ }, { "constant": false, - "id": 54, + "id": 1520, "indexed": false, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 58, - "src": "677:15:1", + "scope": 1524, + "src": "636:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1218,10 +1218,10 @@ "typeString": "uint256" }, "typeName": { - "id": 53, + "id": 1519, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "677:4:1", + "src": "636:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1232,12 +1232,12 @@ }, { "constant": false, - "id": 56, + "id": 1522, "indexed": false, "name": "totalTokens", "nodeType": "VariableDeclaration", - "scope": 58, - "src": "694:16:1", + "scope": 1524, + "src": "653:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1245,10 +1245,10 @@ "typeString": "uint256" }, "typeName": { - "id": 55, + "id": 1521, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "694:4:1", + "src": "653:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1258,28 +1258,28 @@ "visibility": "internal" } ], - "src": "626:85:1" + "src": "585:85:5" }, - "src": "601:111:1" + "src": "560:111:5" }, { "anonymous": false, "documentation": null, - "id": 68, + "id": 1534, "name": "_ChallengeFailed", "nodeType": "EventDefinition", "parameters": { - "id": 67, + "id": 1533, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 60, + "id": 1526, "indexed": true, "name": "propID", "nodeType": "VariableDeclaration", - "scope": 68, - "src": "738:22:1", + "scope": 1534, + "src": "697:22:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1287,10 +1287,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 59, + "id": 1525, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "738:7:1", + "src": "697:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1301,12 +1301,12 @@ }, { "constant": false, - "id": 62, + "id": 1528, "indexed": true, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 68, - "src": "762:24:1", + "scope": 1534, + "src": "721:24:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1314,10 +1314,10 @@ "typeString": "uint256" }, "typeName": { - "id": 61, + "id": 1527, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "762:4:1", + "src": "721:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1328,12 +1328,12 @@ }, { "constant": false, - "id": 64, + "id": 1530, "indexed": false, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 68, - "src": "788:15:1", + "scope": 1534, + "src": "747:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1341,10 +1341,10 @@ "typeString": "uint256" }, "typeName": { - "id": 63, + "id": 1529, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "788:4:1", + "src": "747:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1355,12 +1355,12 @@ }, { "constant": false, - "id": 66, + "id": 1532, "indexed": false, "name": "totalTokens", "nodeType": "VariableDeclaration", - "scope": 68, - "src": "805:16:1", + "scope": 1534, + "src": "764:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1368,10 +1368,10 @@ "typeString": "uint256" }, "typeName": { - "id": 65, + "id": 1531, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "805:4:1", + "src": "764:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1381,28 +1381,28 @@ "visibility": "internal" } ], - "src": "737:85:1" + "src": "696:85:5" }, - "src": "715:108:1" + "src": "674:108:5" }, { "anonymous": false, "documentation": null, - "id": 76, + "id": 1542, "name": "_RewardClaimed", "nodeType": "EventDefinition", "parameters": { - "id": 75, + "id": 1541, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 70, + "id": 1536, "indexed": true, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 76, - "src": "847:24:1", + "scope": 1542, + "src": "806:24:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1410,10 +1410,10 @@ "typeString": "uint256" }, "typeName": { - "id": 69, + "id": 1535, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "847:4:1", + "src": "806:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1424,12 +1424,12 @@ }, { "constant": false, - "id": 72, + "id": 1538, "indexed": false, "name": "reward", "nodeType": "VariableDeclaration", - "scope": 76, - "src": "873:11:1", + "scope": 1542, + "src": "832:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1437,10 +1437,10 @@ "typeString": "uint256" }, "typeName": { - "id": 71, + "id": 1537, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "873:4:1", + "src": "832:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1451,12 +1451,12 @@ }, { "constant": false, - "id": 74, + "id": 1540, "indexed": true, "name": "voter", "nodeType": "VariableDeclaration", - "scope": 76, - "src": "886:21:1", + "scope": 1542, + "src": "845:21:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1464,10 +1464,10 @@ "typeString": "address" }, "typeName": { - "id": 73, + "id": 1539, "name": "address", "nodeType": "ElementaryTypeName", - "src": "886:7:1", + "src": "845:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1477,31 +1477,31 @@ "visibility": "internal" } ], - "src": "846:62:1" + "src": "805:62:5" }, - "src": "826:83:1" + "src": "785:83:5" }, { - "id": 79, + "id": 1545, "libraryName": { "contractScope": null, - "id": 77, + "id": 1543, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3877, - "src": "966:8:1", + "referencedDeclaration": 3687, + "src": "925:8:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$3877", + "typeIdentifier": "t_contract$_SafeMath_$3687", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", - "src": "960:24:1", + "src": "919:24:5", "typeName": { - "id": 78, + "id": 1544, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "979:4:1", + "src": "938:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1510,15 +1510,15 @@ }, { "canonicalName": "Parameterizer.ParamProposal", - "id": 94, + "id": 1560, "members": [ { "constant": false, - "id": 81, + "id": 1547, "name": "appExpiry", "nodeType": "VariableDeclaration", - "scope": 94, - "src": "1015:14:1", + "scope": 1560, + "src": "974:14:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1526,10 +1526,10 @@ "typeString": "uint256" }, "typeName": { - "id": 80, + "id": 1546, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1015:4:1", + "src": "974:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1540,11 +1540,11 @@ }, { "constant": false, - "id": 83, + "id": 1549, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 94, - "src": "1035:16:1", + "scope": 1560, + "src": "994:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1552,10 +1552,10 @@ "typeString": "uint256" }, "typeName": { - "id": 82, + "id": 1548, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1035:4:1", + "src": "994:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1566,11 +1566,11 @@ }, { "constant": false, - "id": 85, + "id": 1551, "name": "deposit", "nodeType": "VariableDeclaration", - "scope": 94, - "src": "1057:12:1", + "scope": 1560, + "src": "1016:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1578,10 +1578,10 @@ "typeString": "uint256" }, "typeName": { - "id": 84, + "id": 1550, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1057:4:1", + "src": "1016:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1592,11 +1592,11 @@ }, { "constant": false, - "id": 87, + "id": 1553, "name": "name", "nodeType": "VariableDeclaration", - "scope": 94, - "src": "1075:11:1", + "scope": 1560, + "src": "1034:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1604,10 +1604,10 @@ "typeString": "string" }, "typeName": { - "id": 86, + "id": 1552, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1075:6:1", + "src": "1034:6:5", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1618,11 +1618,11 @@ }, { "constant": false, - "id": 89, + "id": 1555, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 94, - "src": "1092:13:1", + "scope": 1560, + "src": "1051:13:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1630,10 +1630,10 @@ "typeString": "address" }, "typeName": { - "id": 88, + "id": 1554, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1092:7:1", + "src": "1051:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1644,11 +1644,11 @@ }, { "constant": false, - "id": 91, + "id": 1557, "name": "processBy", "nodeType": "VariableDeclaration", - "scope": 94, - "src": "1111:14:1", + "scope": 1560, + "src": "1070:14:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1656,10 +1656,10 @@ "typeString": "uint256" }, "typeName": { - "id": 90, + "id": 1556, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1111:4:1", + "src": "1070:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1670,11 +1670,11 @@ }, { "constant": false, - "id": 93, + "id": 1559, "name": "value", "nodeType": "VariableDeclaration", - "scope": 94, - "src": "1131:10:1", + "scope": 1560, + "src": "1090:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1682,10 +1682,10 @@ "typeString": "uint256" }, "typeName": { - "id": 92, + "id": 1558, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1131:4:1", + "src": "1090:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1697,21 +1697,21 @@ ], "name": "ParamProposal", "nodeType": "StructDefinition", - "scope": 1003, - "src": "988:158:1", + "scope": 2490, + "src": "947:158:5", "visibility": "public" }, { "canonicalName": "Parameterizer.Challenge", - "id": 109, + "id": 1575, "members": [ { "constant": false, - "id": 96, + "id": 1562, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 109, - "src": "1173:15:1", + "scope": 1575, + "src": "1132:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1719,10 +1719,10 @@ "typeString": "uint256" }, "typeName": { - "id": 95, + "id": 1561, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1173:4:1", + "src": "1132:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1733,11 +1733,11 @@ }, { "constant": false, - "id": 98, + "id": 1564, "name": "challenger", "nodeType": "VariableDeclaration", - "scope": 109, - "src": "1266:18:1", + "scope": 1575, + "src": "1225:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1745,10 +1745,10 @@ "typeString": "address" }, "typeName": { - "id": 97, + "id": 1563, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1266:7:1", + "src": "1225:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1759,11 +1759,11 @@ }, { "constant": false, - "id": 100, + "id": 1566, "name": "resolved", "nodeType": "VariableDeclaration", - "scope": 109, - "src": "1316:13:1", + "scope": 1575, + "src": "1275:13:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1771,10 +1771,10 @@ "typeString": "bool" }, "typeName": { - "id": 99, + "id": 1565, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1316:4:1", + "src": "1275:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1785,11 +1785,11 @@ }, { "constant": false, - "id": 102, + "id": 1568, "name": "stake", "nodeType": "VariableDeclaration", - "scope": 109, - "src": "1386:10:1", + "scope": 1575, + "src": "1345:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1797,10 +1797,10 @@ "typeString": "uint256" }, "typeName": { - "id": 101, + "id": 1567, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1386:4:1", + "src": "1345:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1811,11 +1811,11 @@ }, { "constant": false, - "id": 104, + "id": 1570, "name": "winningTokens", "nodeType": "VariableDeclaration", - "scope": 109, - "src": "1476:18:1", + "scope": 1575, + "src": "1435:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1823,10 +1823,10 @@ "typeString": "uint256" }, "typeName": { - "id": 103, + "id": 1569, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1476:4:1", + "src": "1435:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1837,11 +1837,11 @@ }, { "constant": false, - "id": 108, + "id": 1574, "name": "tokenClaims", "nodeType": "VariableDeclaration", - "scope": 109, - "src": "1572:36:1", + "scope": 1575, + "src": "1531:36:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1849,28 +1849,28 @@ "typeString": "mapping(address => bool)" }, "typeName": { - "id": 107, + "id": 1573, "keyType": { - "id": 105, + "id": 1571, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1580:7:1", + "src": "1539:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1572:24:1", + "src": "1531:24:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" }, "valueType": { - "id": 106, + "id": 1572, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1591:4:1", + "src": "1550:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1883,17 +1883,17 @@ ], "name": "Challenge", "nodeType": "StructDefinition", - "scope": 1003, - "src": "1150:463:1", + "scope": 2490, + "src": "1109:463:5", "visibility": "public" }, { "constant": false, - "id": 113, + "id": 1579, "name": "params", "nodeType": "VariableDeclaration", - "scope": 1003, - "src": "1653:38:1", + "scope": 2490, + "src": "1612:38:5", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1901,28 +1901,28 @@ "typeString": "mapping(bytes32 => uint256)" }, "typeName": { - "id": 112, + "id": 1578, "keyType": { - "id": 110, + "id": 1576, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1661:7:1", + "src": "1620:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "1653:24:1", + "src": "1612:24:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" }, "valueType": { - "id": 111, + "id": 1577, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1672:4:1", + "src": "1631:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1934,44 +1934,44 @@ }, { "constant": false, - "id": 117, + "id": 1583, "name": "challenges", "nodeType": "VariableDeclaration", - "scope": 1003, - "src": "1748:44:1", + "scope": 2490, + "src": "1707:44:5", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge)" }, "typeName": { - "id": 116, + "id": 1582, "keyType": { - "id": 114, + "id": 1580, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1756:4:1", + "src": "1715:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Mapping", - "src": "1748:26:1", + "src": "1707:26:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge)" }, "valueType": { "contractScope": null, - "id": 115, + "id": 1581, "name": "Challenge", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 109, - "src": "1764:9:1", + "referencedDeclaration": 1575, + "src": "1723:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge" } } @@ -1981,44 +1981,44 @@ }, { "constant": false, - "id": 121, + "id": 1587, "name": "proposals", "nodeType": "VariableDeclaration", - "scope": 1003, - "src": "1854:50:1", + "scope": 2490, + "src": "1813:50:5", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal)" }, "typeName": { - "id": 120, + "id": 1586, "keyType": { - "id": 118, + "id": 1584, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1862:7:1", + "src": "1821:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "1854:33:1", + "src": "1813:33:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal)" }, "valueType": { "contractScope": null, - "id": 119, + "id": 1585, "name": "ParamProposal", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 94, - "src": "1873:13:1", + "referencedDeclaration": 1560, + "src": "1832:13:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal" } } @@ -2028,27 +2028,27 @@ }, { "constant": false, - "id": 123, + "id": 1589, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1003, - "src": "1931:27:1", + "scope": 2490, + "src": "1890:18:5", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" }, "typeName": { "contractScope": null, - "id": 122, - "name": "EIP20Interface", + "id": 1588, + "name": "ERC20", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3782, - "src": "1931:14:1", + "referencedDeclaration": 408, + "src": "1890:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, "value": null, @@ -2056,26 +2056,26 @@ }, { "constant": false, - "id": 125, + "id": 1591, "name": "voting", "nodeType": "VariableDeclaration", - "scope": 1003, - "src": "1962:24:1", + "scope": 2490, + "src": "1912:24:5", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" }, "typeName": { "contractScope": null, - "id": 124, + "id": 1590, "name": "PLCRVoting", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3488, - "src": "1962:10:1", + "referencedDeclaration": 1471, + "src": "1912:10:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, @@ -2084,11 +2084,11 @@ }, { "constant": false, - "id": 128, + "id": 1594, "name": "PROCESSBY", "nodeType": "VariableDeclaration", - "scope": 1003, - "src": "1990:30:1", + "scope": 2490, + "src": "1940:30:5", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2096,10 +2096,10 @@ "typeString": "uint256" }, "typeName": { - "id": 126, + "id": 1592, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1990:4:1", + "src": "1940:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2108,14 +2108,14 @@ "value": { "argumentTypes": null, "hexValue": "363034383030", - "id": 127, + "id": 1593, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2014:6:1", + "src": "1964:6:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_604800_by_1", @@ -2127,29 +2127,29 @@ }, { "body": { - "id": 231, + "id": 1697, "nodeType": "Block", - "src": "3653:590:1", + "src": "3592:581:5", "statements": [ { "expression": { "argumentTypes": null, - "id": 163, + "id": 1629, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 159, + "id": 1625, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "3659:5:1", + "referencedDeclaration": 1589, + "src": "3598:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, "nodeType": "Assignment", @@ -2159,12 +2159,12 @@ "arguments": [ { "argumentTypes": null, - "id": 161, + "id": 1627, "name": "_tokenAddr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 130, - "src": "3682:10:1", + "referencedDeclaration": 1596, + "src": "3612:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2178,18 +2178,18 @@ "typeString": "address" } ], - "id": 160, - "name": "EIP20Interface", + "id": 1626, + "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3782, - "src": "3667:14:1", + "referencedDeclaration": 408, + "src": "3606:5:5", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_EIP20Interface_$3782_$", - "typeString": "type(contract EIP20Interface)" + "typeIdentifier": "t_type$_t_contract$_ERC20_$408_$", + "typeString": "type(contract ERC20)" } }, - "id": 162, + "id": 1628, "isConstant": false, "isLValue": false, "isPure": false, @@ -2197,40 +2197,40 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3667:26:1", + "src": "3606:17:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "src": "3659:34:1", + "src": "3598:25:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 164, + "id": 1630, "nodeType": "ExpressionStatement", - "src": "3659:34:1" + "src": "3598:25:5" }, { "expression": { "argumentTypes": null, - "id": 169, + "id": 1635, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 165, + "id": 1631, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "3699:6:1", + "referencedDeclaration": 1591, + "src": "3629:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, @@ -2241,12 +2241,12 @@ "arguments": [ { "argumentTypes": null, - "id": 167, + "id": 1633, "name": "_plcrAddr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 132, - "src": "3719:9:1", + "referencedDeclaration": 1598, + "src": "3649:9:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2260,18 +2260,18 @@ "typeString": "address" } ], - "id": 166, + "id": 1632, "name": "PLCRVoting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3488, - "src": "3708:10:1", + "referencedDeclaration": 1471, + "src": "3638:10:5", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_PLCRVoting_$3488_$", + "typeIdentifier": "t_type$_t_contract$_PLCRVoting_$1471_$", "typeString": "type(contract PLCRVoting)" } }, - "id": 168, + "id": 1634, "isConstant": false, "isLValue": false, "isPure": false, @@ -2279,21 +2279,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3708:21:1", + "src": "3638:21:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "src": "3699:30:1", + "src": "3629:30:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 170, + "id": 1636, "nodeType": "ExpressionStatement", - "src": "3699:30:1" + "src": "3629:30:5" }, { "expression": { @@ -2302,14 +2302,14 @@ { "argumentTypes": null, "hexValue": "6d696e4465706f736974", - "id": 172, + "id": 1638, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3740:12:1", + "src": "3670:12:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_1562a3cff09047061ba41141a6bb560ed15f1ca2968c821562d091212629199d", @@ -2319,12 +2319,12 @@ }, { "argumentTypes": null, - "id": 173, + "id": 1639, "name": "_minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 134, - "src": "3754:11:1", + "referencedDeclaration": 1600, + "src": "3684:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2342,18 +2342,18 @@ "typeString": "uint256" } ], - "id": 171, + "id": 1637, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "3736:3:1", + "referencedDeclaration": 2489, + "src": "3666:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 174, + "id": 1640, "isConstant": false, "isLValue": false, "isPure": false, @@ -2361,15 +2361,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3736:30:1", + "src": "3666:30:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 175, + "id": 1641, "nodeType": "ExpressionStatement", - "src": "3736:30:1" + "src": "3666:30:5" }, { "expression": { @@ -2378,14 +2378,14 @@ { "argumentTypes": null, "hexValue": "704d696e4465706f736974", - "id": 177, + "id": 1643, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3776:13:1", + "src": "3706:13:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_79b35b6e30f7c782e133dcfa06a825d420ec880f4036bf04dd005fe368978200", @@ -2395,12 +2395,12 @@ }, { "argumentTypes": null, - "id": 178, + "id": 1644, "name": "_pMinDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 136, - "src": "3791:12:1", + "referencedDeclaration": 1602, + "src": "3721:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2418,18 +2418,18 @@ "typeString": "uint256" } ], - "id": 176, + "id": 1642, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "3772:3:1", + "referencedDeclaration": 2489, + "src": "3702:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 179, + "id": 1645, "isConstant": false, "isLValue": false, "isPure": false, @@ -2437,15 +2437,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3772:32:1", + "src": "3702:32:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 180, + "id": 1646, "nodeType": "ExpressionStatement", - "src": "3772:32:1" + "src": "3702:32:5" }, { "expression": { @@ -2454,14 +2454,14 @@ { "argumentTypes": null, "hexValue": "6170706c7953746167654c656e", - "id": 182, + "id": 1648, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3814:15:1", + "src": "3744:15:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_e8c03b11eba3b2d069479ae0d3837927171e72e193c0acb726bbd53bdd5902da", @@ -2471,12 +2471,12 @@ }, { "argumentTypes": null, - "id": 183, + "id": 1649, "name": "_applyStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 138, - "src": "3831:14:1", + "referencedDeclaration": 1604, + "src": "3761:14:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2494,18 +2494,18 @@ "typeString": "uint256" } ], - "id": 181, + "id": 1647, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "3810:3:1", + "referencedDeclaration": 2489, + "src": "3740:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 184, + "id": 1650, "isConstant": false, "isLValue": false, "isPure": false, @@ -2513,15 +2513,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3810:36:1", + "src": "3740:36:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 185, + "id": 1651, "nodeType": "ExpressionStatement", - "src": "3810:36:1" + "src": "3740:36:5" }, { "expression": { @@ -2530,14 +2530,14 @@ { "argumentTypes": null, "hexValue": "704170706c7953746167654c656e", - "id": 187, + "id": 1653, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3856:16:1", + "src": "3786:16:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_5b5170ca3f1920aed95b983e4a145c32a025f4a29a71df82746241afd472a9d8", @@ -2547,12 +2547,12 @@ }, { "argumentTypes": null, - "id": 188, + "id": 1654, "name": "_pApplyStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 140, - "src": "3874:15:1", + "referencedDeclaration": 1606, + "src": "3804:15:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2570,18 +2570,18 @@ "typeString": "uint256" } ], - "id": 186, + "id": 1652, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "3852:3:1", + "referencedDeclaration": 2489, + "src": "3782:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 189, + "id": 1655, "isConstant": false, "isLValue": false, "isPure": false, @@ -2589,15 +2589,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3852:38:1", + "src": "3782:38:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 190, + "id": 1656, "nodeType": "ExpressionStatement", - "src": "3852:38:1" + "src": "3782:38:5" }, { "expression": { @@ -2606,14 +2606,14 @@ { "argumentTypes": null, "hexValue": "636f6d6d697453746167654c656e", - "id": 192, + "id": 1658, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3900:16:1", + "src": "3830:16:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_22aa10f6207ed6245b2e23bddfcdfa1a542b375f7cf45082a1a75b9304a6150d", @@ -2623,12 +2623,12 @@ }, { "argumentTypes": null, - "id": 193, + "id": 1659, "name": "_commitStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 142, - "src": "3918:15:1", + "referencedDeclaration": 1608, + "src": "3848:15:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2646,18 +2646,18 @@ "typeString": "uint256" } ], - "id": 191, + "id": 1657, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "3896:3:1", + "referencedDeclaration": 2489, + "src": "3826:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 194, + "id": 1660, "isConstant": false, "isLValue": false, "isPure": false, @@ -2665,15 +2665,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3896:38:1", + "src": "3826:38:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 195, + "id": 1661, "nodeType": "ExpressionStatement", - "src": "3896:38:1" + "src": "3826:38:5" }, { "expression": { @@ -2682,14 +2682,14 @@ { "argumentTypes": null, "hexValue": "70436f6d6d697453746167654c656e", - "id": 197, + "id": 1663, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3944:17:1", + "src": "3874:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_8ba0bfd13d315213bdff16c58a613af32380ba99f9d780656d5dec1267165fb1", @@ -2699,12 +2699,12 @@ }, { "argumentTypes": null, - "id": 198, + "id": 1664, "name": "_pCommitStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 144, - "src": "3963:16:1", + "referencedDeclaration": 1610, + "src": "3893:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2722,18 +2722,18 @@ "typeString": "uint256" } ], - "id": 196, + "id": 1662, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "3940:3:1", + "referencedDeclaration": 2489, + "src": "3870:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 199, + "id": 1665, "isConstant": false, "isLValue": false, "isPure": false, @@ -2741,15 +2741,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3940:40:1", + "src": "3870:40:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 200, + "id": 1666, "nodeType": "ExpressionStatement", - "src": "3940:40:1" + "src": "3870:40:5" }, { "expression": { @@ -2758,14 +2758,14 @@ { "argumentTypes": null, "hexValue": "72657665616c53746167654c656e", - "id": 202, + "id": 1668, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3990:16:1", + "src": "3920:16:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_e8858300ed02b4242350c6412c69b3951ae8f1d10eb49beafb9ecebaba7a0af1", @@ -2775,12 +2775,12 @@ }, { "argumentTypes": null, - "id": 203, + "id": 1669, "name": "_revealStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 146, - "src": "4008:15:1", + "referencedDeclaration": 1612, + "src": "3938:15:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2798,18 +2798,18 @@ "typeString": "uint256" } ], - "id": 201, + "id": 1667, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "3986:3:1", + "referencedDeclaration": 2489, + "src": "3916:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 204, + "id": 1670, "isConstant": false, "isLValue": false, "isPure": false, @@ -2817,15 +2817,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3986:38:1", + "src": "3916:38:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 205, + "id": 1671, "nodeType": "ExpressionStatement", - "src": "3986:38:1" + "src": "3916:38:5" }, { "expression": { @@ -2834,14 +2834,14 @@ { "argumentTypes": null, "hexValue": "7052657665616c53746167654c656e", - "id": 207, + "id": 1673, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4034:17:1", + "src": "3964:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_fb97b9af270fc6f948089d10e64865cacad847ebc2ed8f2c10065db2f3593fa5", @@ -2851,12 +2851,12 @@ }, { "argumentTypes": null, - "id": 208, + "id": 1674, "name": "_pRevealStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 148, - "src": "4053:16:1", + "referencedDeclaration": 1614, + "src": "3983:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2874,18 +2874,18 @@ "typeString": "uint256" } ], - "id": 206, + "id": 1672, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "4030:3:1", + "referencedDeclaration": 2489, + "src": "3960:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 209, + "id": 1675, "isConstant": false, "isLValue": false, "isPure": false, @@ -2893,15 +2893,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4030:40:1", + "src": "3960:40:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 210, + "id": 1676, "nodeType": "ExpressionStatement", - "src": "4030:40:1" + "src": "3960:40:5" }, { "expression": { @@ -2910,14 +2910,14 @@ { "argumentTypes": null, "hexValue": "64697370656e736174696f6e506374", - "id": 212, + "id": 1678, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4080:17:1", + "src": "4010:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_a44475ce52a893bc7cadba79a6351960ca7e12219e3b7f3a04da4d29c39864e4", @@ -2927,12 +2927,12 @@ }, { "argumentTypes": null, - "id": 213, + "id": 1679, "name": "_dispensationPct", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 150, - "src": "4099:16:1", + "referencedDeclaration": 1616, + "src": "4029:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2950,18 +2950,18 @@ "typeString": "uint256" } ], - "id": 211, + "id": 1677, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "4076:3:1", + "referencedDeclaration": 2489, + "src": "4006:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 214, + "id": 1680, "isConstant": false, "isLValue": false, "isPure": false, @@ -2969,15 +2969,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4076:40:1", + "src": "4006:40:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 215, + "id": 1681, "nodeType": "ExpressionStatement", - "src": "4076:40:1" + "src": "4006:40:5" }, { "expression": { @@ -2986,14 +2986,14 @@ { "argumentTypes": null, "hexValue": "7044697370656e736174696f6e506374", - "id": 217, + "id": 1683, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4126:18:1", + "src": "4056:18:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_05a3daf44f91da292c219c05dc954c342940b8aa851b594c6aaec71e37d44b79", @@ -3003,12 +3003,12 @@ }, { "argumentTypes": null, - "id": 218, + "id": 1684, "name": "_pDispensationPct", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 152, - "src": "4146:17:1", + "referencedDeclaration": 1618, + "src": "4076:17:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3026,18 +3026,18 @@ "typeString": "uint256" } ], - "id": 216, + "id": 1682, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "4122:3:1", + "referencedDeclaration": 2489, + "src": "4052:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 219, + "id": 1685, "isConstant": false, "isLValue": false, "isPure": false, @@ -3045,15 +3045,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4122:42:1", + "src": "4052:42:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 220, + "id": 1686, "nodeType": "ExpressionStatement", - "src": "4122:42:1" + "src": "4052:42:5" }, { "expression": { @@ -3062,14 +3062,14 @@ { "argumentTypes": null, "hexValue": "766f746551756f72756d", - "id": 222, + "id": 1688, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4174:12:1", + "src": "4104:12:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_9b01c2212638b995654bf3d584befbb3576184e03cd1a9ae5693a18a1f559878", @@ -3079,12 +3079,12 @@ }, { "argumentTypes": null, - "id": 223, + "id": 1689, "name": "_voteQuorum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 154, - "src": "4188:11:1", + "referencedDeclaration": 1620, + "src": "4118:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3102,18 +3102,18 @@ "typeString": "uint256" } ], - "id": 221, + "id": 1687, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "4170:3:1", + "referencedDeclaration": 2489, + "src": "4100:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 224, + "id": 1690, "isConstant": false, "isLValue": false, "isPure": false, @@ -3121,15 +3121,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4170:30:1", + "src": "4100:30:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 225, + "id": 1691, "nodeType": "ExpressionStatement", - "src": "4170:30:1" + "src": "4100:30:5" }, { "expression": { @@ -3138,14 +3138,14 @@ { "argumentTypes": null, "hexValue": "70566f746551756f72756d", - "id": 227, + "id": 1693, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4210:13:1", + "src": "4140:13:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_1cd8ca3a1baaf24ca4431f7b59b78854d08ce96815f9b5677de2c92385fb9138", @@ -3155,12 +3155,12 @@ }, { "argumentTypes": null, - "id": 228, + "id": 1694, "name": "_pVoteQuorum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "4225:12:1", + "referencedDeclaration": 1622, + "src": "4155:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3178,18 +3178,18 @@ "typeString": "uint256" } ], - "id": 226, + "id": 1692, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "4206:3:1", + "referencedDeclaration": 2489, + "src": "4136:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 229, + "id": 1695, "isConstant": false, "isLValue": false, "isPure": false, @@ -3197,37 +3197,37 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4206:32:1", + "src": "4136:32:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 230, + "id": 1696, "nodeType": "ExpressionStatement", - "src": "4206:32:1" + "src": "4136:32:5" } ] }, "documentation": "@dev constructor\n@param _tokenAddr address of the token which parameterizes this system\n@param _plcrAddr address of a PLCR voting contract for the provided token\n@param _minDeposit minimum deposit for listing to be whitelisted\n@param _pMinDeposit minimum deposit to propose a reparameterization\n@param _applyStageLen period over which applicants wait to be whitelisted\n@param _pApplyStageLen period over which reparmeterization proposals wait to be processed\n@param _dispensationPct percentage of losing party's deposit distributed to winning party\n@param _pDispensationPct percentage of losing party's deposit distributed to winning party in parameterizer\n@param _commitStageLen length of commit period for voting\n@param _pCommitStageLen length of commit period for voting in parameterizer\n@param _revealStageLen length of reveal period for voting\n@param _pRevealStageLen length of reveal period for voting in parameterizer\n@param _voteQuorum type of majority out of 100 necessary for vote success\n@param _pVoteQuorum type of majority out of 100 necessary for vote success in parameterizer", - "id": 232, + "id": 1698, "implemented": true, "isConstructor": true, "isDeclaredConst": false, "modifiers": [], - "name": "Parameterizer", + "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 157, + "id": 1623, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 130, + "id": 1596, "name": "_tokenAddr", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3294:18:1", + "scope": 1698, + "src": "3233:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3235,10 +3235,10 @@ "typeString": "address" }, "typeName": { - "id": 129, + "id": 1595, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3294:7:1", + "src": "3233:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3249,11 +3249,11 @@ }, { "constant": false, - "id": 132, + "id": 1598, "name": "_plcrAddr", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3318:17:1", + "scope": 1698, + "src": "3257:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3261,10 +3261,10 @@ "typeString": "address" }, "typeName": { - "id": 131, + "id": 1597, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3318:7:1", + "src": "3257:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3275,11 +3275,11 @@ }, { "constant": false, - "id": 134, + "id": 1600, "name": "_minDeposit", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3341:16:1", + "scope": 1698, + "src": "3280:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3287,10 +3287,10 @@ "typeString": "uint256" }, "typeName": { - "id": 133, + "id": 1599, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3341:4:1", + "src": "3280:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3301,11 +3301,11 @@ }, { "constant": false, - "id": 136, + "id": 1602, "name": "_pMinDeposit", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3363:17:1", + "scope": 1698, + "src": "3302:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3313,10 +3313,10 @@ "typeString": "uint256" }, "typeName": { - "id": 135, + "id": 1601, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3363:4:1", + "src": "3302:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3327,11 +3327,11 @@ }, { "constant": false, - "id": 138, + "id": 1604, "name": "_applyStageLen", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3386:19:1", + "scope": 1698, + "src": "3325:19:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3339,10 +3339,10 @@ "typeString": "uint256" }, "typeName": { - "id": 137, + "id": 1603, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3386:4:1", + "src": "3325:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3353,11 +3353,11 @@ }, { "constant": false, - "id": 140, + "id": 1606, "name": "_pApplyStageLen", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3411:20:1", + "scope": 1698, + "src": "3350:20:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3365,10 +3365,10 @@ "typeString": "uint256" }, "typeName": { - "id": 139, + "id": 1605, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3411:4:1", + "src": "3350:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3379,11 +3379,11 @@ }, { "constant": false, - "id": 142, + "id": 1608, "name": "_commitStageLen", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3437:20:1", + "scope": 1698, + "src": "3376:20:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3391,10 +3391,10 @@ "typeString": "uint256" }, "typeName": { - "id": 141, + "id": 1607, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3437:4:1", + "src": "3376:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3405,11 +3405,11 @@ }, { "constant": false, - "id": 144, + "id": 1610, "name": "_pCommitStageLen", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3463:21:1", + "scope": 1698, + "src": "3402:21:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3417,10 +3417,10 @@ "typeString": "uint256" }, "typeName": { - "id": 143, + "id": 1609, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3463:4:1", + "src": "3402:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3431,11 +3431,11 @@ }, { "constant": false, - "id": 146, + "id": 1612, "name": "_revealStageLen", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3490:20:1", + "scope": 1698, + "src": "3429:20:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3443,10 +3443,10 @@ "typeString": "uint256" }, "typeName": { - "id": 145, + "id": 1611, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3490:4:1", + "src": "3429:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3457,11 +3457,11 @@ }, { "constant": false, - "id": 148, + "id": 1614, "name": "_pRevealStageLen", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3516:21:1", + "scope": 1698, + "src": "3455:21:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3469,10 +3469,10 @@ "typeString": "uint256" }, "typeName": { - "id": 147, + "id": 1613, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3516:4:1", + "src": "3455:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3483,11 +3483,11 @@ }, { "constant": false, - "id": 150, + "id": 1616, "name": "_dispensationPct", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3543:21:1", + "scope": 1698, + "src": "3482:21:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3495,10 +3495,10 @@ "typeString": "uint256" }, "typeName": { - "id": 149, + "id": 1615, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3543:4:1", + "src": "3482:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3509,11 +3509,11 @@ }, { "constant": false, - "id": 152, + "id": 1618, "name": "_pDispensationPct", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3570:22:1", + "scope": 1698, + "src": "3509:22:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3521,10 +3521,10 @@ "typeString": "uint256" }, "typeName": { - "id": 151, + "id": 1617, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3570:4:1", + "src": "3509:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3535,11 +3535,11 @@ }, { "constant": false, - "id": 154, + "id": 1620, "name": "_voteQuorum", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3598:16:1", + "scope": 1698, + "src": "3537:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3547,10 +3547,10 @@ "typeString": "uint256" }, "typeName": { - "id": 153, + "id": 1619, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3598:4:1", + "src": "3537:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3561,11 +3561,11 @@ }, { "constant": false, - "id": 156, + "id": 1622, "name": "_pVoteQuorum", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3620:17:1", + "scope": 1698, + "src": "3559:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3573,10 +3573,10 @@ "typeString": "uint256" }, "typeName": { - "id": 155, + "id": 1621, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3620:4:1", + "src": "3559:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3586,39 +3586,39 @@ "visibility": "internal" } ], - "src": "3288:355:1" + "src": "3227:355:5" }, "payable": false, "returnParameters": { - "id": 158, + "id": 1624, "nodeType": "ParameterList", "parameters": [], - "src": "3653:0:1" + "src": "3592:0:5" }, - "scope": 1003, - "src": "3266:977:1", + "scope": 2490, + "src": "3216:957:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 355, + "id": 1836, "nodeType": "Block", - "src": "4625:1000:1", + "src": "4555:1133:5", "statements": [ { "assignments": [ - 242 + 1708 ], "declarations": [ { "constant": false, - "id": 242, + "id": 1708, "name": "deposit", "nodeType": "VariableDeclaration", - "scope": 356, - "src": "4631:12:1", + "scope": 1837, + "src": "4561:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3626,10 +3626,10 @@ "typeString": "uint256" }, "typeName": { - "id": 241, + "id": 1707, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4631:4:1", + "src": "4561:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3639,21 +3639,21 @@ "visibility": "internal" } ], - "id": 246, + "id": 1712, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "hexValue": "704d696e4465706f736974", - "id": 244, + "id": 1710, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4650:13:1", + "src": "4580:13:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_79b35b6e30f7c782e133dcfa06a825d420ec880f4036bf04dd005fe368978200", @@ -3669,18 +3669,18 @@ "typeString": "literal_string \"pMinDeposit\"" } ], - "id": 243, + "id": 1709, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "4646:3:1", + "referencedDeclaration": 2349, + "src": "4576:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 245, + "id": 1711, "isConstant": false, "isLValue": false, "isPure": false, @@ -3688,27 +3688,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4646:18:1", + "src": "4576:18:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "4631:33:1" + "src": "4561:33:5" }, { "assignments": [ - 248 + 1714 ], "declarations": [ { "constant": false, - "id": 248, + "id": 1714, "name": "propID", "nodeType": "VariableDeclaration", - "scope": 356, - "src": "4670:14:1", + "scope": 1837, + "src": "4600:14:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3716,10 +3716,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 247, + "id": 1713, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4670:7:1", + "src": "4600:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3729,60 +3729,112 @@ "visibility": "internal" } ], - "id": 253, + "id": 1722, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 250, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 234, - "src": "4697:5:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 251, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 236, - "src": "4704:6:1", + "arguments": [ + { + "argumentTypes": null, + "id": 1718, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1700, + "src": "4644:5:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1719, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1702, + "src": "4651:6:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1716, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "4627:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1717, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4627:16:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1720, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4627:31:5", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 249, + "id": 1715, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "4687:9:1", + "referencedDeclaration": 3696, + "src": "4617:9:5", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 252, + "id": 1721, "isConstant": false, "isLValue": false, "isPure": false, @@ -3790,14 +3842,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4687:24:1", + "src": "4617:42:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "4670:41:1" + "src": "4600:59:5" }, { "condition": { @@ -3806,7 +3858,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 268, + "id": 1749, "isConstant": false, "isLValue": false, "isPure": false, @@ -3817,7 +3869,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 260, + "id": 1735, "isConstant": false, "isLValue": false, "isPure": false, @@ -3827,37 +3879,89 @@ "arguments": [ { "argumentTypes": null, - "id": 255, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 234, - "src": "4732:5:1", + "arguments": [ + { + "argumentTypes": null, + "id": 1726, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1700, + "src": "4697:5:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1724, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "4680:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1725, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4680:16:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1727, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4680:23:5", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 254, + "id": 1723, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "4722:9:1", + "referencedDeclaration": 3696, + "src": "4670:9:5", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 256, + "id": 1728, "isConstant": false, "isLValue": false, "isPure": false, @@ -3865,7 +3969,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4722:16:1", + "src": "4670:34:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3878,42 +3982,94 @@ "arguments": [ { "argumentTypes": null, - "hexValue": "64697370656e736174696f6e506374", - "id": 258, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "64697370656e736174696f6e506374", + "id": 1732, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4735:17:5", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a44475ce52a893bc7cadba79a6351960ca7e12219e3b7f3a04da4d29c39864e4", + "typeString": "literal_string \"dispensationPct\"" + }, + "value": "dispensationPct" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a44475ce52a893bc7cadba79a6351960ca7e12219e3b7f3a04da4d29c39864e4", + "typeString": "literal_string \"dispensationPct\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 1730, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "4718:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1731, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4718:16:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1733, "isConstant": false, "isLValue": false, "isPure": true, - "kind": "string", + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "4752:17:1", - "subdenomination": null, + "names": [], + "nodeType": "FunctionCall", + "src": "4718:35:5", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a44475ce52a893bc7cadba79a6351960ca7e12219e3b7f3a04da4d29c39864e4", - "typeString": "literal_string \"dispensationPct\"" - }, - "value": "dispensationPct" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_stringliteral_a44475ce52a893bc7cadba79a6351960ca7e12219e3b7f3a04da4d29c39864e4", - "typeString": "literal_string \"dispensationPct\"" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 257, + "id": 1729, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "4742:9:1", + "referencedDeclaration": 3696, + "src": "4708:9:5", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 259, + "id": 1734, "isConstant": false, "isLValue": false, "isPure": true, @@ -3921,13 +4077,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4742:28:1", + "src": "4708:46:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "4722:48:1", + "src": "4670:84:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3941,7 +4097,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 267, + "id": 1748, "isConstant": false, "isLValue": false, "isPure": false, @@ -3951,37 +4107,89 @@ "arguments": [ { "argumentTypes": null, - "id": 262, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 234, - "src": "4791:5:1", + "arguments": [ + { + "argumentTypes": null, + "id": 1739, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1700, + "src": "4792:5:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1737, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "4775:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1738, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4775:16:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4775:23:5", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 261, + "id": 1736, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "4781:9:1", + "referencedDeclaration": 3696, + "src": "4765:9:5", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 263, + "id": 1741, "isConstant": false, "isLValue": false, "isPure": false, @@ -3989,7 +4197,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4781:16:1", + "src": "4765:34:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4002,42 +4210,94 @@ "arguments": [ { "argumentTypes": null, - "hexValue": "7044697370656e736174696f6e506374", - "id": 265, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "7044697370656e736174696f6e506374", + "id": 1745, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4830:18:5", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_05a3daf44f91da292c219c05dc954c342940b8aa851b594c6aaec71e37d44b79", + "typeString": "literal_string \"pDispensationPct\"" + }, + "value": "pDispensationPct" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_05a3daf44f91da292c219c05dc954c342940b8aa851b594c6aaec71e37d44b79", + "typeString": "literal_string \"pDispensationPct\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 1743, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "4813:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1744, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4813:16:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1746, "isConstant": false, "isLValue": false, "isPure": true, - "kind": "string", + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "4811:18:1", - "subdenomination": null, + "names": [], + "nodeType": "FunctionCall", + "src": "4813:36:5", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_05a3daf44f91da292c219c05dc954c342940b8aa851b594c6aaec71e37d44b79", - "typeString": "literal_string \"pDispensationPct\"" - }, - "value": "pDispensationPct" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_stringliteral_05a3daf44f91da292c219c05dc954c342940b8aa851b594c6aaec71e37d44b79", - "typeString": "literal_string \"pDispensationPct\"" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 264, + "id": 1742, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "4801:9:1", + "referencedDeclaration": 3696, + "src": "4803:9:5", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 266, + "id": 1747, "isConstant": false, "isLValue": false, "isPure": true, @@ -4045,32 +4305,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4801:29:1", + "src": "4803:47:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "4781:49:1", + "src": "4765:85:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "4722:108:1", + "src": "4670:180:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 276, + "id": 1757, "nodeType": "IfStatement", - "src": "4718:151:1", + "src": "4666:223:5", "trueBody": { - "id": 275, + "id": 1756, "nodeType": "Block", - "src": "4832:37:1", + "src": "4852:37:5", "statements": [ { "expression": { @@ -4082,19 +4342,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 272, + "id": 1753, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 270, + "id": 1751, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 236, - "src": "4848:6:1", + "referencedDeclaration": 1702, + "src": "4868:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4105,14 +4365,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "313030", - "id": 271, + "id": 1752, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4858:3:1", + "src": "4878:3:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -4120,7 +4380,7 @@ }, "value": "100" }, - "src": "4848:13:1", + "src": "4868:13:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4134,21 +4394,21 @@ "typeString": "bool" } ], - "id": 269, + "id": 1750, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4840:7:1", + "referencedDeclaration": 3705, + "src": "4860:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 273, + "id": 1754, "isConstant": false, "isLValue": false, "isPure": false, @@ -4156,15 +4416,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4840:22:1", + "src": "4860:22:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 274, + "id": 1755, "nodeType": "ExpressionStatement", - "src": "4840:22:1" + "src": "4860:22:5" } ] } @@ -4175,7 +4435,7 @@ "arguments": [ { "argumentTypes": null, - "id": 281, + "id": 1762, "isConstant": false, "isLValue": false, "isPure": false, @@ -4183,18 +4443,18 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4883:19:1", + "src": "4903:19:5", "subExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 279, + "id": 1760, "name": "propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "4895:6:1", + "referencedDeclaration": 1714, + "src": "4915:6:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4208,18 +4468,18 @@ "typeString": "bytes32" } ], - "id": 278, + "id": 1759, "name": "propExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "4884:10:1", + "referencedDeclaration": 2258, + "src": "4904:10:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 280, + "id": 1761, "isConstant": false, "isLValue": false, "isPure": false, @@ -4227,7 +4487,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4884:18:1", + "src": "4904:18:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4246,21 +4506,21 @@ "typeString": "bool" } ], - "id": 277, + "id": 1758, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4875:7:1", + "referencedDeclaration": 3705, + "src": "4895:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 282, + "id": 1763, "isConstant": false, "isLValue": false, "isPure": false, @@ -4268,15 +4528,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4875:28:1", + "src": "4895:28:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 283, + "id": 1764, "nodeType": "ExpressionStatement", - "src": "4875:28:1" + "src": "4895:28:5" }, { "expression": { @@ -4288,7 +4548,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 289, + "id": 1770, "isConstant": false, "isLValue": false, "isPure": false, @@ -4298,12 +4558,12 @@ "arguments": [ { "argumentTypes": null, - "id": 286, + "id": 1767, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 234, - "src": "4951:5:1", + "referencedDeclaration": 1700, + "src": "4971:5:5", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4317,18 +4577,18 @@ "typeString": "string memory" } ], - "id": 285, + "id": 1766, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "4947:3:1", + "referencedDeclaration": 2349, + "src": "4967:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 287, + "id": 1768, "isConstant": false, "isLValue": false, "isPure": false, @@ -4336,7 +4596,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4947:10:1", + "src": "4967:10:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4346,18 +4606,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 288, + "id": 1769, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 236, - "src": "4961:6:1", + "referencedDeclaration": 1702, + "src": "4981:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4947:20:1", + "src": "4967:20:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4371,21 +4631,21 @@ "typeString": "bool" } ], - "id": 284, + "id": 1765, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4939:7:1", + "referencedDeclaration": 3705, + "src": "4959:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 290, + "id": 1771, "isConstant": false, "isLValue": false, "isPure": false, @@ -4393,20 +4653,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4939:29:1", + "src": "4959:29:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 291, + "id": 1772, "nodeType": "ExpressionStatement", - "src": "4939:29:1" + "src": "4959:29:5" }, { "expression": { "argumentTypes": null, - "id": 328, + "id": 1809, "isConstant": false, "isLValue": false, "isPure": false, @@ -4415,26 +4675,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 292, + "id": 1773, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "5049:9:1", + "referencedDeclaration": 1587, + "src": "5069:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 294, + "id": 1775, "indexExpression": { "argumentTypes": null, - "id": 293, + "id": 1774, "name": "propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "5059:6:1", + "referencedDeclaration": 1714, + "src": "5079:6:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4445,9 +4705,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5049:17:1", + "src": "5069:17:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, @@ -4465,14 +4725,14 @@ { "argumentTypes": null, "hexValue": "704170706c7953746167654c656e", - "id": 299, + "id": 1780, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5114:16:1", + "src": "5134:16:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_5b5170ca3f1920aed95b983e4a145c32a025f4a29a71df82746241afd472a9d8", @@ -4488,18 +4748,18 @@ "typeString": "literal_string \"pApplyStageLen\"" } ], - "id": 298, + "id": 1779, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "5110:3:1", + "referencedDeclaration": 2349, + "src": "5130:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 300, + "id": 1781, "isConstant": false, "isLValue": false, "isPure": false, @@ -4507,7 +4767,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5110:21:1", + "src": "5130:21:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4523,32 +4783,32 @@ ], "expression": { "argumentTypes": null, - "id": 296, + "id": 1777, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "5102:3:1", + "referencedDeclaration": 3704, + "src": "5122:3:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 297, + "id": 1778, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "5102:7:1", + "referencedDeclaration": 3686, + "src": "5122:7:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 301, + "id": 1782, "isConstant": false, "isLValue": false, "isPure": false, @@ -4556,7 +4816,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5102:30:1", + "src": "5122:30:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4565,14 +4825,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 302, + "id": 1783, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5153:1:1", + "src": "5173:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -4582,12 +4842,12 @@ }, { "argumentTypes": null, - "id": 303, + "id": 1784, "name": "deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 242, - "src": "5171:7:1", + "referencedDeclaration": 1708, + "src": "5191:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4595,12 +4855,12 @@ }, { "argumentTypes": null, - "id": 304, + "id": 1785, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 234, - "src": "5192:5:1", + "referencedDeclaration": 1700, + "src": "5212:5:5", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4610,18 +4870,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 305, + "id": 1786, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5212:3:1", + "referencedDeclaration": 3702, + "src": "5232:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 306, + "id": 1787, "isConstant": false, "isLValue": false, "isPure": false, @@ -4629,7 +4889,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5212:10:1", + "src": "5232:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4640,12 +4900,12 @@ "arguments": [ { "argumentTypes": null, - "id": 324, + "id": 1805, "name": "PROCESSBY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 128, - "src": "5359:9:1", + "referencedDeclaration": 1594, + "src": "5379:9:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4668,14 +4928,14 @@ { "argumentTypes": null, "hexValue": "7052657665616c53746167654c656e", - "id": 320, + "id": 1801, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5326:17:1", + "src": "5346:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_fb97b9af270fc6f948089d10e64865cacad847ebc2ed8f2c10065db2f3593fa5", @@ -4691,18 +4951,18 @@ "typeString": "literal_string \"pRevealStageLen\"" } ], - "id": 319, + "id": 1800, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "5322:3:1", + "referencedDeclaration": 2349, + "src": "5342:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 321, + "id": 1802, "isConstant": false, "isLValue": false, "isPure": false, @@ -4710,7 +4970,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5322:22:1", + "src": "5342:22:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4733,14 +4993,14 @@ { "argumentTypes": null, "hexValue": "70436f6d6d697453746167654c656e", - "id": 315, + "id": 1796, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5289:17:1", + "src": "5309:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_8ba0bfd13d315213bdff16c58a613af32380ba99f9d780656d5dec1267165fb1", @@ -4756,18 +5016,18 @@ "typeString": "literal_string \"pCommitStageLen\"" } ], - "id": 314, + "id": 1795, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "5285:3:1", + "referencedDeclaration": 2349, + "src": "5305:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 316, + "id": 1797, "isConstant": false, "isLValue": false, "isPure": false, @@ -4775,7 +5035,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5285:22:1", + "src": "5305:22:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4798,14 +5058,14 @@ { "argumentTypes": null, "hexValue": "704170706c7953746167654c656e", - "id": 310, + "id": 1791, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5253:16:1", + "src": "5273:16:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_5b5170ca3f1920aed95b983e4a145c32a025f4a29a71df82746241afd472a9d8", @@ -4821,18 +5081,18 @@ "typeString": "literal_string \"pApplyStageLen\"" } ], - "id": 309, + "id": 1790, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "5249:3:1", + "referencedDeclaration": 2349, + "src": "5269:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 311, + "id": 1792, "isConstant": false, "isLValue": false, "isPure": false, @@ -4840,7 +5100,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5249:21:1", + "src": "5269:21:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4856,32 +5116,32 @@ ], "expression": { "argumentTypes": null, - "id": 307, + "id": 1788, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "5241:3:1", + "referencedDeclaration": 3704, + "src": "5261:3:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 308, + "id": 1789, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "5241:7:1", + "referencedDeclaration": 3686, + "src": "5261:7:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 312, + "id": 1793, "isConstant": false, "isLValue": false, "isPure": false, @@ -4889,27 +5149,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5241:30:1", + "src": "5261:30:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 313, + "id": 1794, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "5241:43:1", + "referencedDeclaration": 3686, + "src": "5261:43:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 317, + "id": 1798, "isConstant": false, "isLValue": false, "isPure": false, @@ -4917,27 +5177,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5241:67:1", + "src": "5261:67:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 318, + "id": 1799, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "5241:80:1", + "referencedDeclaration": 3686, + "src": "5261:80:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 322, + "id": 1803, "isConstant": false, "isLValue": false, "isPure": false, @@ -4945,27 +5205,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5241:104:1", + "src": "5261:104:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 323, + "id": 1804, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "5241:117:1", + "referencedDeclaration": 3686, + "src": "5261:117:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 325, + "id": 1806, "isConstant": false, "isLValue": false, "isPure": false, @@ -4973,7 +5233,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5241:128:1", + "src": "5261:128:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4981,12 +5241,12 @@ }, { "argumentTypes": null, - "id": 326, + "id": 1807, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 236, - "src": "5384:6:1", + "referencedDeclaration": 1702, + "src": "5404:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4995,18 +5255,18 @@ ], "expression": { "argumentTypes": null, - "id": 295, + "id": 1776, "name": "ParamProposal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 94, - "src": "5069:13:1", + "referencedDeclaration": 1560, + "src": "5089:13:5", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_ParamProposal_$94_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_ParamProposal_$1560_storage_ptr_$", "typeString": "type(struct Parameterizer.ParamProposal storage pointer)" } }, - "id": 327, + "id": 1808, "isConstant": false, "isLValue": false, "isPure": false, @@ -5022,21 +5282,21 @@ "value" ], "nodeType": "FunctionCall", - "src": "5069:328:1", + "src": "5089:328:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "src": "5049:348:1", + "src": "5069:348:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, - "id": 329, + "id": 1810, "nodeType": "ExpressionStatement", - "src": "5049:348:1" + "src": "5069:348:5" }, { "expression": { @@ -5049,18 +5309,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 333, + "id": 1814, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5431:3:1", + "referencedDeclaration": 3702, + "src": "5451:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 334, + "id": 1815, "isConstant": false, "isLValue": false, "isPure": false, @@ -5068,7 +5328,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5431:10:1", + "src": "5451:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5076,25 +5336,25 @@ }, { "argumentTypes": null, - "id": 335, + "id": 1816, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3919, - "src": "5443:4:1", + "referencedDeclaration": 3727, + "src": "5463:4:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, { "argumentTypes": null, - "id": 336, + "id": 1817, "name": "deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 242, - "src": "5449:7:1", + "referencedDeclaration": 1708, + "src": "5469:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5108,7 +5368,7 @@ "typeString": "address" }, { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" }, { @@ -5118,32 +5378,32 @@ ], "expression": { "argumentTypes": null, - "id": 331, + "id": 1812, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "5412:5:1", + "referencedDeclaration": 1589, + "src": "5432:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 332, + "id": 1813, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 3747, - "src": "5412:18:1", + "referencedDeclaration": 390, + "src": "5432:18:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 337, + "id": 1818, "isConstant": false, "isLValue": false, "isPure": false, @@ -5151,7 +5411,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5412:45:1", + "src": "5432:45:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5165,21 +5425,21 @@ "typeString": "bool" } ], - "id": 330, + "id": 1811, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5404:7:1", + "referencedDeclaration": 3705, + "src": "5424:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 338, + "id": 1819, "isConstant": false, "isLValue": false, "isPure": false, @@ -5187,15 +5447,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5404:54:1", + "src": "5424:54:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 339, + "id": 1820, "nodeType": "ExpressionStatement", - "src": "5404:54:1" + "src": "5424:54:5" }, { "eventCall": { @@ -5203,12 +5463,12 @@ "arguments": [ { "argumentTypes": null, - "id": 341, + "id": 1822, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 234, - "src": "5529:5:1", + "referencedDeclaration": 1700, + "src": "5556:5:5", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -5216,12 +5476,12 @@ }, { "argumentTypes": null, - "id": 342, + "id": 1823, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 236, - "src": "5536:6:1", + "referencedDeclaration": 1702, + "src": "5569:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5229,12 +5489,12 @@ }, { "argumentTypes": null, - "id": 343, + "id": 1824, "name": "propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "5544:6:1", + "referencedDeclaration": 1714, + "src": "5583:6:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5242,12 +5502,12 @@ }, { "argumentTypes": null, - "id": 344, + "id": 1825, "name": "deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 242, - "src": "5552:7:1", + "referencedDeclaration": 1708, + "src": "5597:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5259,26 +5519,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 345, + "id": 1826, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "5561:9:1", + "referencedDeclaration": 1587, + "src": "5612:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 347, + "id": 1828, "indexExpression": { "argumentTypes": null, - "id": 346, + "id": 1827, "name": "propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "5571:6:1", + "referencedDeclaration": 1714, + "src": "5622:6:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5289,21 +5549,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5561:17:1", + "src": "5612:17:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, - "id": 348, + "id": 1829, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "appExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5561:27:1", + "referencedDeclaration": 1547, + "src": "5612:27:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5313,18 +5573,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 349, + "id": 1830, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5590:3:1", + "referencedDeclaration": 3702, + "src": "5647:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 350, + "id": 1831, "isConstant": false, "isLValue": false, "isPure": false, @@ -5332,7 +5592,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5590:10:1", + "src": "5647:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5366,18 +5626,18 @@ "typeString": "address" } ], - "id": 340, + "id": 1821, "name": "_ReparameterizationProposal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 24, - "src": "5501:27:1", + "referencedDeclaration": 1490, + "src": "5521:27:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_bytes32_$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (string memory,uint256,bytes32,uint256,uint256,address)" } }, - "id": 351, + "id": 1832, "isConstant": false, "isLValue": false, "isPure": false, @@ -5385,39 +5645,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5501:100:1", + "src": "5521:142:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 352, + "id": 1833, "nodeType": "EmitStatement", - "src": "5496:105:1" + "src": "5516:147:5" }, { "expression": { "argumentTypes": null, - "id": 353, + "id": 1834, "name": "propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "5614:6:1", + "referencedDeclaration": 1714, + "src": "5677:6:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "functionReturnParameters": 240, - "id": 354, + "functionReturnParameters": 1706, + "id": 1835, "nodeType": "Return", - "src": "5607:13:1" + "src": "5670:13:5" } ] }, "documentation": "@notice propose a reparamaterization of the key _name's value to _value.\n@param _name the name of the proposed param to be set\n@param _value the proposed value to set the param to be set", - "id": 356, + "id": 1837, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -5425,16 +5685,16 @@ "name": "proposeReparameterization", "nodeType": "FunctionDefinition", "parameters": { - "id": 237, + "id": 1703, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 234, + "id": 1700, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 356, - "src": "4573:12:1", + "scope": 1837, + "src": "4503:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5442,10 +5702,10 @@ "typeString": "string" }, "typeName": { - "id": 233, + "id": 1699, "name": "string", "nodeType": "ElementaryTypeName", - "src": "4573:6:1", + "src": "4503:6:5", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5456,11 +5716,11 @@ }, { "constant": false, - "id": 236, + "id": 1702, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 356, - "src": "4587:11:1", + "scope": 1837, + "src": "4517:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5468,10 +5728,10 @@ "typeString": "uint256" }, "typeName": { - "id": 235, + "id": 1701, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4587:4:1", + "src": "4517:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5481,20 +5741,20 @@ "visibility": "internal" } ], - "src": "4572:27:1" + "src": "4502:27:5" }, "payable": false, "returnParameters": { - "id": 240, + "id": 1706, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 239, + "id": 1705, "name": "", "nodeType": "VariableDeclaration", - "scope": 356, - "src": "4616:7:1", + "scope": 1837, + "src": "4546:7:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5502,10 +5762,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 238, + "id": 1704, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4616:7:1", + "src": "4546:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5515,47 +5775,47 @@ "visibility": "internal" } ], - "src": "4615:9:1" + "src": "4545:9:5" }, - "scope": 1003, - "src": "4538:1087:1", + "scope": 2490, + "src": "4468:1220:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 468, + "id": 1949, "nodeType": "Block", - "src": "5854:938:1", + "src": "5917:971:5", "statements": [ { "assignments": [ - 364 + 1845 ], "declarations": [ { "constant": false, - "id": 364, + "id": 1845, "name": "prop", "nodeType": "VariableDeclaration", - "scope": 469, - "src": "5860:25:1", + "scope": 1950, + "src": "5923:25:5", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal" }, "typeName": { "contractScope": null, - "id": 363, + "id": 1844, "name": "ParamProposal", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 94, - "src": "5860:13:1", + "referencedDeclaration": 1560, + "src": "5923:13:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal" } }, @@ -5563,31 +5823,31 @@ "visibility": "internal" } ], - "id": 368, + "id": 1849, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 365, + "id": 1846, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "5888:9:1", + "referencedDeclaration": 1587, + "src": "5951:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 367, + "id": 1848, "indexExpression": { "argumentTypes": null, - "id": 366, + "id": 1847, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 358, - "src": "5898:7:1", + "referencedDeclaration": 1839, + "src": "5961:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5598,27 +5858,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5888:18:1", + "src": "5951:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5860:46:1" + "src": "5923:46:5" }, { "assignments": [ - 370 + 1851 ], "declarations": [ { "constant": false, - "id": 370, + "id": 1851, "name": "deposit", "nodeType": "VariableDeclaration", - "scope": 469, - "src": "5912:12:1", + "scope": 1950, + "src": "5975:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5626,10 +5886,10 @@ "typeString": "uint256" }, "typeName": { - "id": 369, + "id": 1850, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5912:4:1", + "src": "5975:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5639,38 +5899,38 @@ "visibility": "internal" } ], - "id": 373, + "id": 1854, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 371, + "id": 1852, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 364, - "src": "5927:4:1", + "referencedDeclaration": 1845, + "src": "5990:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 372, + "id": 1853, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "deposit", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "5927:12:1", + "referencedDeclaration": 1551, + "src": "5990:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "5912:27:1" + "src": "5975:27:5" }, { "expression": { @@ -5682,7 +5942,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 382, + "id": 1863, "isConstant": false, "isLValue": false, "isPure": false, @@ -5692,12 +5952,12 @@ "arguments": [ { "argumentTypes": null, - "id": 376, + "id": 1857, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 358, - "src": "5965:7:1", + "referencedDeclaration": 1839, + "src": "6028:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5711,18 +5971,18 @@ "typeString": "bytes32" } ], - "id": 375, + "id": 1856, "name": "propExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "5954:10:1", + "referencedDeclaration": 2258, + "src": "6017:10:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 377, + "id": 1858, "isConstant": false, "isLValue": false, "isPure": false, @@ -5730,7 +5990,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5954:19:1", + "src": "6017:19:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5744,7 +6004,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 381, + "id": 1862, "isConstant": false, "isLValue": false, "isPure": false, @@ -5753,26 +6013,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 378, + "id": 1859, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 364, - "src": "5977:4:1", + "referencedDeclaration": 1845, + "src": "6040:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 379, + "id": 1860, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "5977:16:1", + "referencedDeclaration": 1549, + "src": "6040:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5783,14 +6043,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 380, + "id": 1861, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5997:1:1", + "src": "6060:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -5798,13 +6058,13 @@ }, "value": "0" }, - "src": "5977:21:1", + "src": "6040:21:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "5954:44:1", + "src": "6017:44:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5818,21 +6078,21 @@ "typeString": "bool" } ], - "id": 374, + "id": 1855, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5946:7:1", + "referencedDeclaration": 3705, + "src": "6009:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 383, + "id": 1864, "isConstant": false, "isLValue": false, "isPure": false, @@ -5840,28 +6100,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5946:53:1", + "src": "6009:53:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 384, + "id": 1865, "nodeType": "ExpressionStatement", - "src": "5946:53:1" + "src": "6009:53:5" }, { "assignments": [ - 386 + 1867 ], "declarations": [ { "constant": false, - "id": 386, + "id": 1867, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 469, - "src": "6023:11:1", + "scope": 1950, + "src": "6086:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5869,10 +6129,10 @@ "typeString": "uint256" }, "typeName": { - "id": 385, + "id": 1866, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6023:4:1", + "src": "6086:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5882,7 +6142,7 @@ "visibility": "internal" } ], - "id": 399, + "id": 1880, "initialValue": { "argumentTypes": null, "arguments": [ @@ -5892,14 +6152,14 @@ { "argumentTypes": null, "hexValue": "70566f746551756f72756d", - "id": 390, + "id": 1871, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6065:13:1", + "src": "6128:13:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_1cd8ca3a1baaf24ca4431f7b59b78854d08ce96815f9b5677de2c92385fb9138", @@ -5915,18 +6175,18 @@ "typeString": "literal_string \"pVoteQuorum\"" } ], - "id": 389, + "id": 1870, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "6061:3:1", + "referencedDeclaration": 2349, + "src": "6124:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 391, + "id": 1872, "isConstant": false, "isLValue": false, "isPure": false, @@ -5934,7 +6194,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6061:18:1", + "src": "6124:18:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5946,14 +6206,14 @@ { "argumentTypes": null, "hexValue": "70436f6d6d697453746167654c656e", - "id": 393, + "id": 1874, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6091:17:1", + "src": "6154:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_8ba0bfd13d315213bdff16c58a613af32380ba99f9d780656d5dec1267165fb1", @@ -5969,18 +6229,18 @@ "typeString": "literal_string \"pCommitStageLen\"" } ], - "id": 392, + "id": 1873, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "6087:3:1", + "referencedDeclaration": 2349, + "src": "6150:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 394, + "id": 1875, "isConstant": false, "isLValue": false, "isPure": false, @@ -5988,7 +6248,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6087:22:1", + "src": "6150:22:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6000,14 +6260,14 @@ { "argumentTypes": null, "hexValue": "7052657665616c53746167654c656e", - "id": 396, + "id": 1877, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6121:17:1", + "src": "6184:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_fb97b9af270fc6f948089d10e64865cacad847ebc2ed8f2c10065db2f3593fa5", @@ -6023,18 +6283,18 @@ "typeString": "literal_string \"pRevealStageLen\"" } ], - "id": 395, + "id": 1876, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "6117:3:1", + "referencedDeclaration": 2349, + "src": "6180:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 397, + "id": 1878, "isConstant": false, "isLValue": false, "isPure": false, @@ -6042,7 +6302,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6117:22:1", + "src": "6180:22:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6066,32 +6326,32 @@ ], "expression": { "argumentTypes": null, - "id": 387, + "id": 1868, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "6037:6:1", + "referencedDeclaration": 1591, + "src": "6100:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 388, + "id": 1869, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "startPoll", "nodeType": "MemberAccess", - "referencedDeclaration": 3121, - "src": "6037:16:1", + "referencedDeclaration": 1101, + "src": "6100:16:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) external returns (uint256)" } }, - "id": 398, + "id": 1879, "isConstant": false, "isLValue": false, "isPure": false, @@ -6099,19 +6359,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6037:108:1", + "src": "6100:108:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "6023:122:1" + "src": "6086:122:5" }, { "expression": { "argumentTypes": null, - "id": 423, + "id": 1904, "isConstant": false, "isLValue": false, "isPure": false, @@ -6120,26 +6380,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 400, + "id": 1881, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "6152:10:1", + "referencedDeclaration": 1583, + "src": "6215:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 402, + "id": 1883, "indexExpression": { "argumentTypes": null, - "id": 401, + "id": 1882, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6163:6:1", + "referencedDeclaration": 1867, + "src": "6226:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6150,9 +6410,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "6152:18:1", + "src": "6215:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, @@ -6165,18 +6425,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 404, + "id": 1885, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "6203:3:1", + "referencedDeclaration": 3702, + "src": "6266:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 405, + "id": 1886, "isConstant": false, "isLValue": false, "isPure": false, @@ -6184,7 +6444,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6203:10:1", + "src": "6266:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6196,14 +6456,14 @@ { "argumentTypes": null, "hexValue": "313030", - "id": 417, + "id": 1898, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6293:3:1", + "src": "6356:3:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -6224,12 +6484,12 @@ "arguments": [ { "argumentTypes": null, - "id": 414, + "id": 1895, "name": "deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 370, - "src": "6280:7:1", + "referencedDeclaration": 1851, + "src": "6343:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6249,14 +6509,14 @@ { "argumentTypes": null, "hexValue": "313030", - "id": 408, + "id": 1889, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6246:3:1", + "src": "6309:3:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -6270,14 +6530,14 @@ { "argumentTypes": null, "hexValue": "7044697370656e736174696f6e506374", - "id": 410, + "id": 1891, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6255:18:1", + "src": "6318:18:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_05a3daf44f91da292c219c05dc954c342940b8aa851b594c6aaec71e37d44b79", @@ -6293,18 +6553,18 @@ "typeString": "literal_string \"pDispensationPct\"" } ], - "id": 409, + "id": 1890, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "6251:3:1", + "referencedDeclaration": 2349, + "src": "6314:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 411, + "id": 1892, "isConstant": false, "isLValue": false, "isPure": false, @@ -6312,7 +6572,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6251:23:1", + "src": "6314:23:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6332,32 +6592,32 @@ ], "expression": { "argumentTypes": null, - "id": 406, + "id": 1887, "name": "SafeMath", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3877, - "src": "6233:8:1", + "referencedDeclaration": 3687, + "src": "6296:8:5", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SafeMath_$3877_$", + "typeIdentifier": "t_type$_t_contract$_SafeMath_$3687_$", "typeString": "type(library SafeMath)" } }, - "id": 407, + "id": 1888, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 3852, - "src": "6233:12:1", + "referencedDeclaration": 3662, + "src": "6296:12:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 412, + "id": 1893, "isConstant": false, "isLValue": false, "isPure": false, @@ -6365,27 +6625,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6233:42:1", + "src": "6296:42:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 413, + "id": 1894, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 3814, - "src": "6233:46:1", + "referencedDeclaration": 3628, + "src": "6296:46:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 415, + "id": 1896, "isConstant": false, "isLValue": false, "isPure": false, @@ -6393,27 +6653,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6233:55:1", + "src": "6296:55:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 416, + "id": 1897, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 3832, - "src": "6233:59:1", + "referencedDeclaration": 3642, + "src": "6296:59:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 418, + "id": 1899, "isConstant": false, "isLValue": false, "isPure": false, @@ -6421,7 +6681,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6233:64:1", + "src": "6296:64:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6429,12 +6689,12 @@ }, { "argumentTypes": null, - "id": 419, + "id": 1900, "name": "deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 370, - "src": "6312:7:1", + "referencedDeclaration": 1851, + "src": "6375:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6443,14 +6703,14 @@ { "argumentTypes": null, "hexValue": "66616c7365", - "id": 420, + "id": 1901, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "6337:5:1", + "src": "6400:5:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6461,14 +6721,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 421, + "id": 1902, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6365:1:1", + "src": "6428:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -6479,18 +6739,18 @@ ], "expression": { "argumentTypes": null, - "id": 403, + "id": 1884, "name": "Challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 109, - "src": "6173:9:1", + "referencedDeclaration": 1575, + "src": "6236:9:5", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Challenge_$109_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Challenge_$1575_storage_ptr_$", "typeString": "type(struct Parameterizer.Challenge storage pointer)" } }, - "id": 422, + "id": 1903, "isConstant": false, "isLValue": false, "isPure": false, @@ -6504,26 +6764,26 @@ "winningTokens" ], "nodeType": "FunctionCall", - "src": "6173:200:1", + "src": "6236:200:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_memory", + "typeIdentifier": "t_struct$_Challenge_$1575_memory", "typeString": "struct Parameterizer.Challenge memory" } }, - "src": "6152:221:1", + "src": "6215:221:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 424, + "id": 1905, "nodeType": "ExpressionStatement", - "src": "6152:221:1" + "src": "6215:221:5" }, { "expression": { "argumentTypes": null, - "id": 430, + "id": 1911, "isConstant": false, "isLValue": false, "isPure": false, @@ -6534,26 +6794,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 425, + "id": 1906, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "6380:9:1", + "referencedDeclaration": 1587, + "src": "6443:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 427, + "id": 1908, "indexExpression": { "argumentTypes": null, - "id": 426, + "id": 1907, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 358, - "src": "6390:7:1", + "referencedDeclaration": 1839, + "src": "6453:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6564,21 +6824,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6380:18:1", + "src": "6443:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, - "id": 428, + "id": 1909, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "6380:30:1", + "referencedDeclaration": 1549, + "src": "6443:30:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6588,26 +6848,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 429, + "id": 1910, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6413:6:1", + "referencedDeclaration": 1867, + "src": "6476:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6380:39:1", + "src": "6443:39:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 431, + "id": 1912, "nodeType": "ExpressionStatement", - "src": "6380:39:1" + "src": "6443:39:5" }, { "expression": { @@ -6620,18 +6880,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 435, + "id": 1916, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "6542:3:1", + "referencedDeclaration": 3702, + "src": "6605:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 436, + "id": 1917, "isConstant": false, "isLValue": false, "isPure": false, @@ -6639,7 +6899,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6542:10:1", + "src": "6605:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6647,25 +6907,25 @@ }, { "argumentTypes": null, - "id": 437, + "id": 1918, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3919, - "src": "6554:4:1", + "referencedDeclaration": 3727, + "src": "6617:4:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, { "argumentTypes": null, - "id": 438, + "id": 1919, "name": "deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 370, - "src": "6560:7:1", + "referencedDeclaration": 1851, + "src": "6623:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6679,7 +6939,7 @@ "typeString": "address" }, { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" }, { @@ -6689,32 +6949,32 @@ ], "expression": { "argumentTypes": null, - "id": 433, + "id": 1914, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "6523:5:1", + "referencedDeclaration": 1589, + "src": "6586:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 434, + "id": 1915, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 3747, - "src": "6523:18:1", + "referencedDeclaration": 390, + "src": "6586:18:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 439, + "id": 1920, "isConstant": false, "isLValue": false, "isPure": false, @@ -6722,7 +6982,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6523:45:1", + "src": "6586:45:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6736,21 +6996,21 @@ "typeString": "bool" } ], - "id": 432, + "id": 1913, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "6515:7:1", + "referencedDeclaration": 3705, + "src": "6578:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 440, + "id": 1921, "isConstant": false, "isLValue": false, "isPure": false, @@ -6758,26 +7018,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6515:54:1", + "src": "6578:54:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 441, + "id": 1922, "nodeType": "ExpressionStatement", - "src": "6515:54:1" + "src": "6578:54:5" }, { "assignments": [], "declarations": [ { "constant": false, - "id": 443, + "id": 1924, "name": "commitEndDate", "nodeType": "VariableDeclaration", - "scope": 469, - "src": "6576:18:1", + "scope": 1950, + "src": "6639:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6785,10 +7045,10 @@ "typeString": "uint256" }, "typeName": { - "id": 442, + "id": 1923, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6576:4:1", + "src": "6639:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6798,21 +7058,21 @@ "visibility": "internal" } ], - "id": 444, + "id": 1925, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "6576:18:1" + "src": "6639:18:5" }, { "assignments": [], "declarations": [ { "constant": false, - "id": 446, + "id": 1927, "name": "revealEndDate", "nodeType": "VariableDeclaration", - "scope": 469, - "src": "6600:18:1", + "scope": 1950, + "src": "6663:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6820,10 +7080,10 @@ "typeString": "uint256" }, "typeName": { - "id": 445, + "id": 1926, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6600:4:1", + "src": "6663:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6833,15 +7093,15 @@ "visibility": "internal" } ], - "id": 447, + "id": 1928, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "6600:18:1" + "src": "6663:18:5" }, { "expression": { "argumentTypes": null, - "id": 455, + "id": 1936, "isConstant": false, "isLValue": false, "isPure": false, @@ -6851,12 +7111,12 @@ "components": [ { "argumentTypes": null, - "id": 448, + "id": 1929, "name": "commitEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 443, - "src": "6625:13:1", + "referencedDeclaration": 1924, + "src": "6688:13:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6864,12 +7124,12 @@ }, { "argumentTypes": null, - "id": 449, + "id": 1930, "name": "revealEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 446, - "src": "6640:13:1", + "referencedDeclaration": 1927, + "src": "6703:13:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6877,14 +7137,14 @@ }, null ], - "id": 450, + "id": 1931, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", - "src": "6624:31:1", + "src": "6687:31:5", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$__$", "typeString": "tuple(uint256,uint256,)" @@ -6897,12 +7157,12 @@ "arguments": [ { "argumentTypes": null, - "id": 453, + "id": 1934, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6673:6:1", + "referencedDeclaration": 1867, + "src": "6736:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6918,32 +7178,32 @@ ], "expression": { "argumentTypes": null, - "id": 451, + "id": 1932, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "6658:6:1", + "referencedDeclaration": 1591, + "src": "6721:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 452, + "id": 1933, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "pollMap", "nodeType": "MemberAccess", - "referencedDeclaration": 2561, - "src": "6658:14:1", + "referencedDeclaration": 535, + "src": "6721:14:5", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "function (uint256) view external returns (uint256,uint256,uint256,uint256,uint256)" } }, - "id": 454, + "id": 1935, "isConstant": false, "isLValue": false, "isPure": false, @@ -6951,21 +7211,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6658:22:1", + "src": "6721:22:5", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(uint256,uint256,uint256,uint256,uint256)" } }, - "src": "6624:56:1", + "src": "6687:56:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 456, + "id": 1937, "nodeType": "ExpressionStatement", - "src": "6624:56:1" + "src": "6687:56:5" }, { "eventCall": { @@ -6973,12 +7233,12 @@ "arguments": [ { "argumentTypes": null, - "id": 458, + "id": 1939, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 358, - "src": "6710:7:1", + "referencedDeclaration": 1839, + "src": "6776:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6986,12 +7246,12 @@ }, { "argumentTypes": null, - "id": 459, + "id": 1940, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6719:6:1", + "referencedDeclaration": 1867, + "src": "6791:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6999,12 +7259,12 @@ }, { "argumentTypes": null, - "id": 460, + "id": 1941, "name": "commitEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 443, - "src": "6727:13:1", + "referencedDeclaration": 1924, + "src": "6805:13:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7012,12 +7272,12 @@ }, { "argumentTypes": null, - "id": 461, + "id": 1942, "name": "revealEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 446, - "src": "6742:13:1", + "referencedDeclaration": 1927, + "src": "6826:13:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7027,18 +7287,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 462, + "id": 1943, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "6757:3:1", + "referencedDeclaration": 3702, + "src": "6847:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 463, + "id": 1944, "isConstant": false, "isLValue": false, "isPure": false, @@ -7046,7 +7306,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6757:10:1", + "src": "6847:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7076,18 +7336,18 @@ "typeString": "address" } ], - "id": 457, + "id": 1938, "name": "_NewChallenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 36, - "src": "6696:13:1", + "referencedDeclaration": 1502, + "src": "6755:13:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (bytes32,uint256,uint256,uint256,address)" } }, - "id": 464, + "id": 1945, "isConstant": false, "isLValue": false, "isPure": false, @@ -7095,39 +7355,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6696:72:1", + "src": "6755:108:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 465, + "id": 1946, "nodeType": "EmitStatement", - "src": "6691:77:1" + "src": "6750:113:5" }, { "expression": { "argumentTypes": null, - "id": 466, + "id": 1947, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6781:6:1", + "referencedDeclaration": 1867, + "src": "6877:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 362, - "id": 467, + "functionReturnParameters": 1843, + "id": 1948, "nodeType": "Return", - "src": "6774:13:1" + "src": "6870:13:5" } ] }, "documentation": "@notice challenge the provided proposal ID, and put tokens at stake to do so.\n@param _propID the proposal ID to challenge", - "id": 469, + "id": 1950, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -7135,16 +7395,16 @@ "name": "challengeReparameterization", "nodeType": "FunctionDefinition", "parameters": { - "id": 359, + "id": 1840, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 358, + "id": 1839, "name": "_propID", "nodeType": "VariableDeclaration", - "scope": 469, - "src": "5803:15:1", + "scope": 1950, + "src": "5866:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7152,10 +7412,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 357, + "id": 1838, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5803:7:1", + "src": "5866:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7165,20 +7425,20 @@ "visibility": "internal" } ], - "src": "5802:17:1" + "src": "5865:17:5" }, "payable": false, "returnParameters": { - "id": 362, + "id": 1843, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 361, + "id": 1842, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 469, - "src": "5836:16:1", + "scope": 1950, + "src": "5899:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7186,10 +7446,10 @@ "typeString": "uint256" }, "typeName": { - "id": 360, + "id": 1841, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5836:4:1", + "src": "5899:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7199,47 +7459,47 @@ "visibility": "internal" } ], - "src": "5835:18:1" + "src": "5898:18:5" }, - "scope": 1003, - "src": "5766:1026:1", + "scope": 2490, + "src": "5829:1059:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 601, + "id": 2082, "nodeType": "Block", - "src": "7136:1559:1", + "src": "7232:1559:5", "statements": [ { "assignments": [ - 475 + 1956 ], "declarations": [ { "constant": false, - "id": 475, + "id": 1956, "name": "prop", "nodeType": "VariableDeclaration", - "scope": 602, - "src": "7142:26:1", + "scope": 2083, + "src": "7238:26:5", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal" }, "typeName": { "contractScope": null, - "id": 474, + "id": 1955, "name": "ParamProposal", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 94, - "src": "7142:13:1", + "referencedDeclaration": 1560, + "src": "7238:13:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal" } }, @@ -7247,31 +7507,31 @@ "visibility": "internal" } ], - "id": 479, + "id": 1960, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 476, + "id": 1957, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "7171:9:1", + "referencedDeclaration": 1587, + "src": "7267:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 478, + "id": 1959, "indexExpression": { "argumentTypes": null, - "id": 477, + "id": 1958, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "7181:7:1", + "referencedDeclaration": 1952, + "src": "7277:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7282,27 +7542,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7171:18:1", + "src": "7267:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "7142:47:1" + "src": "7238:47:5" }, { "assignments": [ - 481 + 1962 ], "declarations": [ { "constant": false, - "id": 481, + "id": 1962, "name": "propOwner", "nodeType": "VariableDeclaration", - "scope": 602, - "src": "7195:17:1", + "scope": 2083, + "src": "7291:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7310,10 +7570,10 @@ "typeString": "address" }, "typeName": { - "id": 480, + "id": 1961, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7195:7:1", + "src": "7291:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7323,51 +7583,51 @@ "visibility": "internal" } ], - "id": 484, + "id": 1965, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 482, + "id": 1963, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "7215:4:1", + "referencedDeclaration": 1956, + "src": "7311:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal storage pointer" } }, - "id": 483, + "id": 1964, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 89, - "src": "7215:10:1", + "referencedDeclaration": 1555, + "src": "7311:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "VariableDeclarationStatement", - "src": "7195:30:1" + "src": "7291:30:5" }, { "assignments": [ - 486 + 1967 ], "declarations": [ { "constant": false, - "id": 486, + "id": 1967, "name": "propDeposit", "nodeType": "VariableDeclaration", - "scope": 602, - "src": "7231:16:1", + "scope": 2083, + "src": "7327:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7375,10 +7635,10 @@ "typeString": "uint256" }, "typeName": { - "id": 485, + "id": 1966, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7231:4:1", + "src": "7327:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7388,38 +7648,38 @@ "visibility": "internal" } ], - "id": 489, + "id": 1970, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 487, + "id": 1968, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "7250:4:1", + "referencedDeclaration": 1956, + "src": "7346:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal storage pointer" } }, - "id": 488, + "id": 1969, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "deposit", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "7250:12:1", + "referencedDeclaration": 1551, + "src": "7346:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "7231:31:1" + "src": "7327:31:5" }, { "condition": { @@ -7427,12 +7687,12 @@ "arguments": [ { "argumentTypes": null, - "id": 491, + "id": 1972, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "7452:7:1", + "referencedDeclaration": 1952, + "src": "7548:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7446,18 +7706,18 @@ "typeString": "bytes32" } ], - "id": 490, + "id": 1971, "name": "canBeSet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 762, - "src": "7443:8:1", + "referencedDeclaration": 2243, + "src": "7539:8:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 492, + "id": 1973, "isConstant": false, "isLValue": false, "isPure": false, @@ -7465,7 +7725,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7443:17:1", + "src": "7539:17:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7477,12 +7737,12 @@ "arguments": [ { "argumentTypes": null, - "id": 523, + "id": 2004, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "7847:7:1", + "referencedDeclaration": 1952, + "src": "7943:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7496,18 +7756,18 @@ "typeString": "bytes32" } ], - "id": 522, + "id": 2003, "name": "challengeCanBeResolved", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 815, - "src": "7824:22:1", + "referencedDeclaration": 2296, + "src": "7920:22:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 524, + "id": 2005, "isConstant": false, "isLValue": false, "isPure": false, @@ -7515,7 +7775,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7824:31:1", + "src": "7920:31:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7528,19 +7788,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 533, + "id": 2014, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 530, + "id": 2011, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "7959:3:1", + "referencedDeclaration": 3704, + "src": "8055:3:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7552,41 +7812,41 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 531, + "id": 2012, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "7965:4:1", + "referencedDeclaration": 1956, + "src": "8061:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal storage pointer" } }, - "id": 532, + "id": 2013, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "processBy", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "7965:14:1", + "referencedDeclaration": 1557, + "src": "8061:14:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7959:20:1", + "src": "8055:20:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 555, + "id": 2036, "nodeType": "Block", - "src": "8208:151:1", + "src": "8304:151:5", "statements": [ { "expression": { @@ -7594,21 +7854,21 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 552, + "id": 2033, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 3897, - 3898 + 3707, + 3708 ], - "referencedDeclaration": 3897, - "src": "8344:6:1", + "referencedDeclaration": 3707, + "src": "8440:6:5", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 553, + "id": 2034, "isConstant": false, "isLValue": false, "isPure": false, @@ -7616,25 +7876,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8344:8:1", + "src": "8440:8:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 554, + "id": 2035, "nodeType": "ExpressionStatement", - "src": "8344:8:1" + "src": "8440:8:5" } ] }, - "id": 556, + "id": 2037, "nodeType": "IfStatement", - "src": "7955:404:1", + "src": "8051:404:5", "trueBody": { - "id": 551, + "id": 2032, "nodeType": "Block", - "src": "7981:221:1", + "src": "8077:221:5", "statements": [ { "eventCall": { @@ -7642,12 +7902,12 @@ "arguments": [ { "argumentTypes": null, - "id": 535, + "id": 2016, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "8099:7:1", + "referencedDeclaration": 1952, + "src": "8195:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7661,18 +7921,18 @@ "typeString": "bytes32" } ], - "id": 534, + "id": 2015, "name": "_ProposalExpired", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 48, - "src": "8082:16:1", + "referencedDeclaration": 1514, + "src": "8178:16:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 536, + "id": 2017, "isConstant": false, "isLValue": false, "isPure": false, @@ -7680,20 +7940,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8082:25:1", + "src": "8178:25:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 537, + "id": 2018, "nodeType": "EmitStatement", - "src": "8077:30:1" + "src": "8173:30:5" }, { "expression": { "argumentTypes": null, - "id": 541, + "id": 2022, "isConstant": false, "isLValue": false, "isPure": false, @@ -7701,31 +7961,31 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "8115:25:1", + "src": "8211:25:5", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 538, + "id": 2019, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "8122:9:1", + "referencedDeclaration": 1587, + "src": "8218:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 540, + "id": 2021, "indexExpression": { "argumentTypes": null, - "id": 539, + "id": 2020, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "8132:7:1", + "referencedDeclaration": 1952, + "src": "8228:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7736,9 +7996,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "8122:18:1", + "src": "8218:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, @@ -7747,9 +8007,9 @@ "typeString": "tuple()" } }, - "id": 542, + "id": 2023, "nodeType": "ExpressionStatement", - "src": "8115:25:1" + "src": "8211:25:5" }, { "expression": { @@ -7760,12 +8020,12 @@ "arguments": [ { "argumentTypes": null, - "id": 546, + "id": 2027, "name": "propOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 481, - "src": "8171:9:1", + "referencedDeclaration": 1962, + "src": "8267:9:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7773,12 +8033,12 @@ }, { "argumentTypes": null, - "id": 547, + "id": 2028, "name": "propDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 486, - "src": "8182:11:1", + "referencedDeclaration": 1967, + "src": "8278:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7798,32 +8058,32 @@ ], "expression": { "argumentTypes": null, - "id": 544, + "id": 2025, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "8156:5:1", + "referencedDeclaration": 1589, + "src": "8252:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 545, + "id": 2026, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "8156:14:1", + "referencedDeclaration": 431, + "src": "8252:14:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 548, + "id": 2029, "isConstant": false, "isLValue": false, "isPure": false, @@ -7831,7 +8091,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8156:38:1", + "src": "8252:38:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7845,21 +8105,21 @@ "typeString": "bool" } ], - "id": 543, + "id": 2024, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "8148:7:1", + "referencedDeclaration": 3705, + "src": "8244:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 549, + "id": 2030, "isConstant": false, "isLValue": false, "isPure": false, @@ -7867,26 +8127,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8148:47:1", + "src": "8244:47:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 550, + "id": 2031, "nodeType": "ExpressionStatement", - "src": "8148:47:1" + "src": "8244:47:5" } ] } }, - "id": 557, + "id": 2038, "nodeType": "IfStatement", - "src": "7820:539:1", + "src": "7916:539:5", "trueBody": { - "id": 529, + "id": 2010, "nodeType": "Block", - "src": "7857:92:1", + "src": "7953:92:5", "statements": [ { "expression": { @@ -7894,12 +8154,12 @@ "arguments": [ { "argumentTypes": null, - "id": 526, + "id": 2007, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "7934:7:1", + "referencedDeclaration": 1952, + "src": "8030:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7913,18 +8173,18 @@ "typeString": "bytes32" } ], - "id": 525, + "id": 2006, "name": "resolveChallenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 986, - "src": "7917:16:1", + "referencedDeclaration": 2470, + "src": "8013:16:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 527, + "id": 2008, "isConstant": false, "isLValue": false, "isPure": false, @@ -7932,26 +8192,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7917:25:1", + "src": "8013:25:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 528, + "id": 2009, "nodeType": "ExpressionStatement", - "src": "7917:25:1" + "src": "8013:25:5" } ] } }, - "id": 558, + "id": 2039, "nodeType": "IfStatement", - "src": "7439:920:1", + "src": "7535:920:5", "trueBody": { - "id": 521, + "id": 2002, "nodeType": "Block", - "src": "7462:352:1", + "src": "7558:352:5", "statements": [ { "expression": { @@ -7961,26 +8221,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 494, + "id": 1975, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "7635:4:1", + "referencedDeclaration": 1956, + "src": "7731:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal storage pointer" } }, - "id": 495, + "id": 1976, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "name", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "7635:9:1", + "referencedDeclaration": 1553, + "src": "7731:9:5", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -7990,26 +8250,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 496, + "id": 1977, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "7646:4:1", + "referencedDeclaration": 1956, + "src": "7742:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal storage pointer" } }, - "id": 497, + "id": 1978, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 93, - "src": "7646:10:1", + "referencedDeclaration": 1559, + "src": "7742:10:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8027,18 +8287,18 @@ "typeString": "uint256" } ], - "id": 493, + "id": 1974, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "7631:3:1", + "referencedDeclaration": 2489, + "src": "7727:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 498, + "id": 1979, "isConstant": false, "isLValue": false, "isPure": false, @@ -8046,15 +8306,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7631:26:1", + "src": "7727:26:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 499, + "id": 1980, "nodeType": "ExpressionStatement", - "src": "7631:26:1" + "src": "7727:26:5" }, { "eventCall": { @@ -8062,12 +8322,12 @@ "arguments": [ { "argumentTypes": null, - "id": 501, + "id": 1982, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "7688:7:1", + "referencedDeclaration": 1952, + "src": "7784:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8077,26 +8337,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 502, + "id": 1983, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "7697:4:1", + "referencedDeclaration": 1956, + "src": "7793:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal storage pointer" } }, - "id": 503, + "id": 1984, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "name", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "7697:9:1", + "referencedDeclaration": 1553, + "src": "7793:9:5", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -8106,26 +8366,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 504, + "id": 1985, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "7708:4:1", + "referencedDeclaration": 1956, + "src": "7804:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal storage pointer" } }, - "id": 505, + "id": 1986, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 93, - "src": "7708:10:1", + "referencedDeclaration": 1559, + "src": "7804:10:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8147,18 +8407,18 @@ "typeString": "uint256" } ], - "id": 500, + "id": 1981, "name": "_ProposalAccepted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 44, - "src": "7670:17:1", + "referencedDeclaration": 1510, + "src": "7766:17:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (bytes32,string memory,uint256)" } }, - "id": 506, + "id": 1987, "isConstant": false, "isLValue": false, "isPure": false, @@ -8166,20 +8426,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7670:49:1", + "src": "7766:49:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 507, + "id": 1988, "nodeType": "EmitStatement", - "src": "7665:54:1" + "src": "7761:54:5" }, { "expression": { "argumentTypes": null, - "id": 511, + "id": 1992, "isConstant": false, "isLValue": false, "isPure": false, @@ -8187,31 +8447,31 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "7727:25:1", + "src": "7823:25:5", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 508, + "id": 1989, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "7734:9:1", + "referencedDeclaration": 1587, + "src": "7830:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 510, + "id": 1991, "indexExpression": { "argumentTypes": null, - "id": 509, + "id": 1990, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "7744:7:1", + "referencedDeclaration": 1952, + "src": "7840:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8222,9 +8482,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "7734:18:1", + "src": "7830:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, @@ -8233,9 +8493,9 @@ "typeString": "tuple()" } }, - "id": 512, + "id": 1993, "nodeType": "ExpressionStatement", - "src": "7727:25:1" + "src": "7823:25:5" }, { "expression": { @@ -8246,12 +8506,12 @@ "arguments": [ { "argumentTypes": null, - "id": 516, + "id": 1997, "name": "propOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 481, - "src": "7783:9:1", + "referencedDeclaration": 1962, + "src": "7879:9:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8259,12 +8519,12 @@ }, { "argumentTypes": null, - "id": 517, + "id": 1998, "name": "propDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 486, - "src": "7794:11:1", + "referencedDeclaration": 1967, + "src": "7890:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8284,32 +8544,32 @@ ], "expression": { "argumentTypes": null, - "id": 514, + "id": 1995, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "7768:5:1", + "referencedDeclaration": 1589, + "src": "7864:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 515, + "id": 1996, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "7768:14:1", + "referencedDeclaration": 431, + "src": "7864:14:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 518, + "id": 1999, "isConstant": false, "isLValue": false, "isPure": false, @@ -8317,7 +8577,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7768:38:1", + "src": "7864:38:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8331,21 +8591,21 @@ "typeString": "bool" } ], - "id": 513, + "id": 1994, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "7760:7:1", + "referencedDeclaration": 3705, + "src": "7856:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 519, + "id": 2000, "isConstant": false, "isLValue": false, "isPure": false, @@ -8353,15 +8613,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7760:47:1", + "src": "7856:47:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 520, + "id": 2001, "nodeType": "ExpressionStatement", - "src": "7760:47:1" + "src": "7856:47:5" } ] } @@ -8376,7 +8636,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 564, + "id": 2045, "isConstant": false, "isLValue": false, "isPure": false, @@ -8387,14 +8647,14 @@ { "argumentTypes": null, "hexValue": "64697370656e736174696f6e506374", - "id": 561, + "id": 2042, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8376:17:1", + "src": "8472:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_a44475ce52a893bc7cadba79a6351960ca7e12219e3b7f3a04da4d29c39864e4", @@ -8410,18 +8670,18 @@ "typeString": "literal_string \"dispensationPct\"" } ], - "id": 560, + "id": 2041, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "8372:3:1", + "referencedDeclaration": 2349, + "src": "8468:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 562, + "id": 2043, "isConstant": false, "isLValue": false, "isPure": false, @@ -8429,7 +8689,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8372:22:1", + "src": "8468:22:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8440,14 +8700,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "313030", - "id": 563, + "id": 2044, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8398:3:1", + "src": "8494:3:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -8455,7 +8715,7 @@ }, "value": "100" }, - "src": "8372:29:1", + "src": "8468:29:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8469,18 +8729,18 @@ "typeString": "bool" } ], - "id": 559, + "id": 2040, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3881, - "src": "8365:6:1", + "referencedDeclaration": 3691, + "src": "8461:6:5", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 565, + "id": 2046, "isConstant": false, "isLValue": false, "isPure": false, @@ -8488,15 +8748,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8365:37:1", + "src": "8461:37:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 566, + "id": 2047, "nodeType": "ExpressionStatement", - "src": "8365:37:1" + "src": "8461:37:5" }, { "expression": { @@ -8508,7 +8768,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 572, + "id": 2053, "isConstant": false, "isLValue": false, "isPure": false, @@ -8519,14 +8779,14 @@ { "argumentTypes": null, "hexValue": "7044697370656e736174696f6e506374", - "id": 569, + "id": 2050, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8419:18:1", + "src": "8515:18:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_05a3daf44f91da292c219c05dc954c342940b8aa851b594c6aaec71e37d44b79", @@ -8542,18 +8802,18 @@ "typeString": "literal_string \"pDispensationPct\"" } ], - "id": 568, + "id": 2049, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "8415:3:1", + "referencedDeclaration": 2349, + "src": "8511:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 570, + "id": 2051, "isConstant": false, "isLValue": false, "isPure": false, @@ -8561,7 +8821,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8415:23:1", + "src": "8511:23:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8572,14 +8832,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "313030", - "id": 571, + "id": 2052, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8442:3:1", + "src": "8538:3:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -8587,7 +8847,7 @@ }, "value": "100" }, - "src": "8415:30:1", + "src": "8511:30:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8601,18 +8861,18 @@ "typeString": "bool" } ], - "id": 567, + "id": 2048, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3881, - "src": "8408:6:1", + "referencedDeclaration": 3691, + "src": "8504:6:5", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 573, + "id": 2054, "isConstant": false, "isLValue": false, "isPure": false, @@ -8620,15 +8880,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8408:38:1", + "src": "8504:38:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 574, + "id": 2055, "nodeType": "ExpressionStatement", - "src": "8408:38:1" + "src": "8504:38:5" }, { "expression": { @@ -8636,12 +8896,12 @@ "arguments": [ { "argumentTypes": null, - "id": 593, + "id": 2074, "name": "PROCESSBY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 128, - "src": "8648:9:1", + "referencedDeclaration": 1594, + "src": "8744:9:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8664,14 +8924,14 @@ { "argumentTypes": null, "hexValue": "7052657665616c53746167654c656e", - "id": 589, + "id": 2070, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8617:17:1", + "src": "8713:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_fb97b9af270fc6f948089d10e64865cacad847ebc2ed8f2c10065db2f3593fa5", @@ -8687,18 +8947,18 @@ "typeString": "literal_string \"pRevealStageLen\"" } ], - "id": 588, + "id": 2069, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "8613:3:1", + "referencedDeclaration": 2349, + "src": "8709:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 590, + "id": 2071, "isConstant": false, "isLValue": false, "isPure": false, @@ -8706,7 +8966,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8613:22:1", + "src": "8709:22:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8729,14 +8989,14 @@ { "argumentTypes": null, "hexValue": "70436f6d6d697453746167654c656e", - "id": 584, + "id": 2065, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8582:17:1", + "src": "8678:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_8ba0bfd13d315213bdff16c58a613af32380ba99f9d780656d5dec1267165fb1", @@ -8752,18 +9012,18 @@ "typeString": "literal_string \"pCommitStageLen\"" } ], - "id": 583, + "id": 2064, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "8578:3:1", + "referencedDeclaration": 2349, + "src": "8674:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 585, + "id": 2066, "isConstant": false, "isLValue": false, "isPure": false, @@ -8771,7 +9031,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8578:22:1", + "src": "8674:22:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8794,14 +9054,14 @@ { "argumentTypes": null, "hexValue": "704170706c7953746167654c656e", - "id": 579, + "id": 2060, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8548:16:1", + "src": "8644:16:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_5b5170ca3f1920aed95b983e4a145c32a025f4a29a71df82746241afd472a9d8", @@ -8817,18 +9077,18 @@ "typeString": "literal_string \"pApplyStageLen\"" } ], - "id": 578, + "id": 2059, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "8544:3:1", + "referencedDeclaration": 2349, + "src": "8640:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 580, + "id": 2061, "isConstant": false, "isLValue": false, "isPure": false, @@ -8836,7 +9096,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8544:21:1", + "src": "8640:21:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8852,32 +9112,32 @@ ], "expression": { "argumentTypes": null, - "id": 575, + "id": 2056, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "8536:3:1", + "referencedDeclaration": 3704, + "src": "8632:3:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 577, + "id": 2058, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "8536:7:1", + "referencedDeclaration": 3686, + "src": "8632:7:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 581, + "id": 2062, "isConstant": false, "isLValue": false, "isPure": false, @@ -8885,27 +9145,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8536:30:1", + "src": "8632:30:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 582, + "id": 2063, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "8536:41:1", + "referencedDeclaration": 3686, + "src": "8632:41:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 586, + "id": 2067, "isConstant": false, "isLValue": false, "isPure": false, @@ -8913,27 +9173,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8536:65:1", + "src": "8632:65:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 587, + "id": 2068, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "8536:76:1", + "referencedDeclaration": 3686, + "src": "8632:76:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 591, + "id": 2072, "isConstant": false, "isLValue": false, "isPure": false, @@ -8941,27 +9201,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8536:100:1", + "src": "8632:100:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 592, + "id": 2073, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "8536:111:1", + "referencedDeclaration": 3686, + "src": "8632:111:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 594, + "id": 2075, "isConstant": false, "isLValue": false, "isPure": false, @@ -8969,20 +9229,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8536:122:1", + "src": "8632:122:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 595, + "id": 2076, "nodeType": "ExpressionStatement", - "src": "8536:122:1" + "src": "8632:122:5" }, { "expression": { "argumentTypes": null, - "id": 599, + "id": 2080, "isConstant": false, "isLValue": false, "isPure": false, @@ -8990,31 +9250,31 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "8665:25:1", + "src": "8761:25:5", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 596, + "id": 2077, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "8672:9:1", + "referencedDeclaration": 1587, + "src": "8768:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 598, + "id": 2079, "indexExpression": { "argumentTypes": null, - "id": 597, + "id": 2078, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "8682:7:1", + "referencedDeclaration": 1952, + "src": "8778:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -9025,9 +9285,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "8672:18:1", + "src": "8768:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, @@ -9036,14 +9296,14 @@ "typeString": "tuple()" } }, - "id": 600, + "id": 2081, "nodeType": "ExpressionStatement", - "src": "8665:25:1" + "src": "8761:25:5" } ] }, "documentation": "@notice for the provided proposal ID, set it, resolve its challenge, or delete it depending on whether it can be set, has a challenge which can be resolved, or if its \"process by\" date has passed\n@param _propID the proposal ID to make a determination and state transition for", - "id": 602, + "id": 2083, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -9051,16 +9311,16 @@ "name": "processProposal", "nodeType": "FunctionDefinition", "parameters": { - "id": 472, + "id": 1953, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 471, + "id": 1952, "name": "_propID", "nodeType": "VariableDeclaration", - "scope": 602, - "src": "7112:15:1", + "scope": 2083, + "src": "7208:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9068,10 +9328,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 470, + "id": 1951, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "7112:7:1", + "src": "7208:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -9081,26 +9341,26 @@ "visibility": "internal" } ], - "src": "7111:17:1" + "src": "7207:17:5" }, "payable": false, "returnParameters": { - "id": 473, + "id": 1954, "nodeType": "ParameterList", "parameters": [], - "src": "7136:0:1" + "src": "7232:0:5" }, - "scope": 1003, - "src": "7087:1608:1", + "scope": 2490, + "src": "7183:1608:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 689, + "id": 2170, "nodeType": "Block", - "src": "8979:844:1", + "src": "9075:844:5", "statements": [ { "expression": { @@ -9112,7 +9372,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 618, + "id": 2099, "isConstant": false, "isLValue": false, "isPure": false, @@ -9125,26 +9385,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 610, + "id": 2091, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "9086:10:1", + "referencedDeclaration": 1583, + "src": "9182:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 612, + "id": 2093, "indexExpression": { "argumentTypes": null, - "id": 611, + "id": 2092, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9097:12:1", + "referencedDeclaration": 2085, + "src": "9193:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9155,43 +9415,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9086:24:1", + "src": "9182:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 613, + "id": 2094, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokenClaims", "nodeType": "MemberAccess", - "referencedDeclaration": 108, - "src": "9086:36:1", + "referencedDeclaration": 1574, + "src": "9182:36:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 616, + "id": 2097, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 614, + "id": 2095, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9123:3:1", + "referencedDeclaration": 3702, + "src": "9219:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 615, + "id": 2096, "isConstant": false, "isLValue": false, "isPure": false, @@ -9199,7 +9459,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9123:10:1", + "src": "9219:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9210,7 +9470,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9086:48:1", + "src": "9182:48:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9221,14 +9481,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 617, + "id": 2098, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9138:5:1", + "src": "9234:5:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -9236,7 +9496,7 @@ }, "value": "false" }, - "src": "9086:57:1", + "src": "9182:57:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9250,21 +9510,21 @@ "typeString": "bool" } ], - "id": 609, + "id": 2090, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "9078:7:1", + "referencedDeclaration": 3705, + "src": "9174:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 619, + "id": 2100, "isConstant": false, "isLValue": false, "isPure": false, @@ -9272,15 +9532,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9078:66:1", + "src": "9174:66:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 620, + "id": 2101, "nodeType": "ExpressionStatement", - "src": "9078:66:1" + "src": "9174:66:5" }, { "expression": { @@ -9292,7 +9552,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 627, + "id": 2108, "isConstant": false, "isLValue": false, "isPure": false, @@ -9303,26 +9563,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 622, + "id": 2103, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "9158:10:1", + "referencedDeclaration": 1583, + "src": "9254:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 624, + "id": 2105, "indexExpression": { "argumentTypes": null, - "id": 623, + "id": 2104, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9169:12:1", + "referencedDeclaration": 2085, + "src": "9265:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9333,21 +9593,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9158:24:1", + "src": "9254:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 625, + "id": 2106, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 100, - "src": "9158:33:1", + "referencedDeclaration": 1566, + "src": "9254:33:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9358,14 +9618,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "74727565", - "id": 626, + "id": 2107, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9195:4:1", + "src": "9291:4:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -9373,7 +9633,7 @@ }, "value": "true" }, - "src": "9158:41:1", + "src": "9254:41:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9387,21 +9647,21 @@ "typeString": "bool" } ], - "id": 621, + "id": 2102, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "9150:7:1", + "referencedDeclaration": 3705, + "src": "9246:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 628, + "id": 2109, "isConstant": false, "isLValue": false, "isPure": false, @@ -9409,28 +9669,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9150:50:1", + "src": "9246:50:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 629, + "id": 2110, "nodeType": "ExpressionStatement", - "src": "9150:50:1" + "src": "9246:50:5" }, { "assignments": [ - 631 + 2112 ], "declarations": [ { "constant": false, - "id": 631, + "id": 2112, "name": "voterTokens", "nodeType": "VariableDeclaration", - "scope": 690, - "src": "9207:16:1", + "scope": 2171, + "src": "9303:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9438,10 +9698,10 @@ "typeString": "uint256" }, "typeName": { - "id": 630, + "id": 2111, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9207:4:1", + "src": "9303:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9451,7 +9711,7 @@ "visibility": "internal" } ], - "id": 639, + "id": 2120, "initialValue": { "argumentTypes": null, "arguments": [ @@ -9459,18 +9719,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 634, + "id": 2115, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9253:3:1", + "referencedDeclaration": 3702, + "src": "9349:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 635, + "id": 2116, "isConstant": false, "isLValue": false, "isPure": false, @@ -9478,7 +9738,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9253:10:1", + "src": "9349:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9486,12 +9746,12 @@ }, { "argumentTypes": null, - "id": 636, + "id": 2117, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9265:12:1", + "referencedDeclaration": 2085, + "src": "9361:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9499,12 +9759,12 @@ }, { "argumentTypes": null, - "id": 637, + "id": 2118, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 606, - "src": "9279:5:1", + "referencedDeclaration": 2087, + "src": "9375:5:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9528,32 +9788,32 @@ ], "expression": { "argumentTypes": null, - "id": 632, + "id": 2113, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "9226:6:1", + "referencedDeclaration": 1591, + "src": "9322:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 633, + "id": 2114, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getNumPassingTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 3065, - "src": "9226:26:1", + "referencedDeclaration": 1045, + "src": "9322:26:5", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256,uint256) view external returns (uint256)" } }, - "id": 638, + "id": 2119, "isConstant": false, "isLValue": false, "isPure": false, @@ -9561,27 +9821,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9226:59:1", + "src": "9322:59:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9207:78:1" + "src": "9303:78:5" }, { "assignments": [ - 641 + 2122 ], "declarations": [ { "constant": false, - "id": 641, + "id": 2122, "name": "reward", "nodeType": "VariableDeclaration", - "scope": 690, - "src": "9291:11:1", + "scope": 2171, + "src": "9387:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9589,10 +9849,10 @@ "typeString": "uint256" }, "typeName": { - "id": 640, + "id": 2121, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9291:4:1", + "src": "9387:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9602,7 +9862,7 @@ "visibility": "internal" } ], - "id": 648, + "id": 2129, "initialValue": { "argumentTypes": null, "arguments": [ @@ -9610,18 +9870,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 643, + "id": 2124, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9317:3:1", + "referencedDeclaration": 3702, + "src": "9413:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 644, + "id": 2125, "isConstant": false, "isLValue": false, "isPure": false, @@ -9629,7 +9889,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9317:10:1", + "src": "9413:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9637,12 +9897,12 @@ }, { "argumentTypes": null, - "id": 645, + "id": 2126, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9329:12:1", + "referencedDeclaration": 2085, + "src": "9425:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9650,12 +9910,12 @@ }, { "argumentTypes": null, - "id": 646, + "id": 2127, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 606, - "src": "9343:5:1", + "referencedDeclaration": 2087, + "src": "9439:5:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9677,18 +9937,18 @@ "typeString": "uint256" } ], - "id": 642, + "id": 2123, "name": "voterReward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 732, - "src": "9305:11:1", + "referencedDeclaration": 2213, + "src": "9401:11:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256,uint256) view returns (uint256)" } }, - "id": 647, + "id": 2128, "isConstant": false, "isLValue": false, "isPure": false, @@ -9696,19 +9956,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9305:44:1", + "src": "9401:44:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9291:58:1" + "src": "9387:58:5" }, { "expression": { "argumentTypes": null, - "id": 654, + "id": 2135, "isConstant": false, "isLValue": false, "isPure": false, @@ -9719,26 +9979,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 649, + "id": 2130, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "9494:10:1", + "referencedDeclaration": 1583, + "src": "9590:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 651, + "id": 2132, "indexExpression": { "argumentTypes": null, - "id": 650, + "id": 2131, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9505:12:1", + "referencedDeclaration": 2085, + "src": "9601:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9749,21 +10009,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9494:24:1", + "src": "9590:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 652, + "id": 2133, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "winningTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 104, - "src": "9494:38:1", + "referencedDeclaration": 1570, + "src": "9590:38:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9773,31 +10033,31 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 653, + "id": 2134, "name": "voterTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 631, - "src": "9536:11:1", + "referencedDeclaration": 2112, + "src": "9632:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9494:53:1", + "src": "9590:53:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 655, + "id": 2136, "nodeType": "ExpressionStatement", - "src": "9494:53:1" + "src": "9590:53:5" }, { "expression": { "argumentTypes": null, - "id": 661, + "id": 2142, "isConstant": false, "isLValue": false, "isPure": false, @@ -9808,26 +10068,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 656, + "id": 2137, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "9553:10:1", + "referencedDeclaration": 1583, + "src": "9649:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 658, + "id": 2139, "indexExpression": { "argumentTypes": null, - "id": 657, + "id": 2138, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9564:12:1", + "referencedDeclaration": 2085, + "src": "9660:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9838,21 +10098,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9553:24:1", + "src": "9649:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 659, + "id": 2140, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 96, - "src": "9553:35:1", + "referencedDeclaration": 1562, + "src": "9649:35:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9862,31 +10122,31 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 660, + "id": 2141, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 641, - "src": "9592:6:1", + "referencedDeclaration": 2122, + "src": "9688:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9553:45:1", + "src": "9649:45:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 662, + "id": 2143, "nodeType": "ExpressionStatement", - "src": "9553:45:1" + "src": "9649:45:5" }, { "expression": { "argumentTypes": null, - "id": 671, + "id": 2152, "isConstant": false, "isLValue": false, "isPure": false, @@ -9899,26 +10159,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 663, + "id": 2144, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "9654:10:1", + "referencedDeclaration": 1583, + "src": "9750:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 665, + "id": 2146, "indexExpression": { "argumentTypes": null, - "id": 664, + "id": 2145, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9665:12:1", + "referencedDeclaration": 2085, + "src": "9761:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9929,43 +10189,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9654:24:1", + "src": "9750:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 666, + "id": 2147, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokenClaims", "nodeType": "MemberAccess", - "referencedDeclaration": 108, - "src": "9654:36:1", + "referencedDeclaration": 1574, + "src": "9750:36:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 669, + "id": 2150, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 667, + "id": 2148, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9691:3:1", + "referencedDeclaration": 3702, + "src": "9787:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 668, + "id": 2149, "isConstant": false, "isLValue": false, "isPure": false, @@ -9973,7 +10233,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9691:10:1", + "src": "9787:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9984,7 +10244,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "9654:48:1", + "src": "9750:48:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9995,14 +10255,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 670, + "id": 2151, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9705:4:1", + "src": "9801:4:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -10010,15 +10270,15 @@ }, "value": "true" }, - "src": "9654:55:1", + "src": "9750:55:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 672, + "id": 2153, "nodeType": "ExpressionStatement", - "src": "9654:55:1" + "src": "9750:55:5" }, { "eventCall": { @@ -10026,12 +10286,12 @@ "arguments": [ { "argumentTypes": null, - "id": 674, + "id": 2155, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9736:12:1", + "referencedDeclaration": 2085, + "src": "9832:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10039,12 +10299,12 @@ }, { "argumentTypes": null, - "id": 675, + "id": 2156, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 641, - "src": "9750:6:1", + "referencedDeclaration": 2122, + "src": "9846:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10054,18 +10314,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 676, + "id": 2157, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9758:3:1", + "referencedDeclaration": 3702, + "src": "9854:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 677, + "id": 2158, "isConstant": false, "isLValue": false, "isPure": false, @@ -10073,7 +10333,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9758:10:1", + "src": "9854:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10095,18 +10355,18 @@ "typeString": "address" } ], - "id": 673, + "id": 2154, "name": "_RewardClaimed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 76, - "src": "9721:14:1", + "referencedDeclaration": 1542, + "src": "9817:14:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,uint256,address)" } }, - "id": 678, + "id": 2159, "isConstant": false, "isLValue": false, "isPure": false, @@ -10114,15 +10374,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9721:48:1", + "src": "9817:48:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 679, + "id": 2160, "nodeType": "EmitStatement", - "src": "9716:53:1" + "src": "9812:53:5" }, { "expression": { @@ -10135,18 +10395,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 683, + "id": 2164, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9798:3:1", + "referencedDeclaration": 3702, + "src": "9894:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 684, + "id": 2165, "isConstant": false, "isLValue": false, "isPure": false, @@ -10154,7 +10414,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9798:10:1", + "src": "9894:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10162,12 +10422,12 @@ }, { "argumentTypes": null, - "id": 685, + "id": 2166, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 641, - "src": "9810:6:1", + "referencedDeclaration": 2122, + "src": "9906:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10187,32 +10447,32 @@ ], "expression": { "argumentTypes": null, - "id": 681, + "id": 2162, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "9783:5:1", + "referencedDeclaration": 1589, + "src": "9879:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 682, + "id": 2163, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "9783:14:1", + "referencedDeclaration": 431, + "src": "9879:14:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 686, + "id": 2167, "isConstant": false, "isLValue": false, "isPure": false, @@ -10220,7 +10480,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9783:34:1", + "src": "9879:34:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -10234,21 +10494,21 @@ "typeString": "bool" } ], - "id": 680, + "id": 2161, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "9775:7:1", + "referencedDeclaration": 3705, + "src": "9871:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 687, + "id": 2168, "isConstant": false, "isLValue": false, "isPure": false, @@ -10256,20 +10516,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9775:43:1", + "src": "9871:43:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 688, + "id": 2169, "nodeType": "ExpressionStatement", - "src": "9775:43:1" + "src": "9871:43:5" } ] }, "documentation": "@notice claim the tokens owed for the msg.sender in the provided challenge\n@param _challengeID the challenge ID to claim tokens for\n@param _salt the salt used to vote in the challenge being withdrawn for", - "id": 690, + "id": 2171, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -10277,16 +10537,16 @@ "name": "claimReward", "nodeType": "FunctionDefinition", "parameters": { - "id": 607, + "id": 2088, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 604, + "id": 2085, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 690, - "src": "8941:17:1", + "scope": 2171, + "src": "9037:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10294,10 +10554,10 @@ "typeString": "uint256" }, "typeName": { - "id": 603, + "id": 2084, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8941:4:1", + "src": "9037:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10308,11 +10568,11 @@ }, { "constant": false, - "id": 606, + "id": 2087, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 690, - "src": "8960:10:1", + "scope": 2171, + "src": "9056:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10320,10 +10580,10 @@ "typeString": "uint256" }, "typeName": { - "id": 605, + "id": 2086, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8960:4:1", + "src": "9056:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10333,39 +10593,39 @@ "visibility": "internal" } ], - "src": "8940:31:1" + "src": "9036:31:5" }, "payable": false, "returnParameters": { - "id": 608, + "id": 2089, "nodeType": "ParameterList", "parameters": [], - "src": "8979:0:1" + "src": "9075:0:5" }, - "scope": 1003, - "src": "8920:903:1", + "scope": 2490, + "src": "9016:903:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 731, + "id": 2212, "nodeType": "Block", - "src": "10378:264:1", + "src": "10474:264:5", "statements": [ { "assignments": [ - 702 + 2183 ], "declarations": [ { "constant": false, - "id": 702, + "id": 2183, "name": "winningTokens", "nodeType": "VariableDeclaration", - "scope": 732, - "src": "10384:18:1", + "scope": 2213, + "src": "10480:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10373,10 +10633,10 @@ "typeString": "uint256" }, "typeName": { - "id": 701, + "id": 2182, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10384:4:1", + "src": "10480:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10386,33 +10646,33 @@ "visibility": "internal" } ], - "id": 707, + "id": 2188, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 703, + "id": 2184, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "10405:10:1", + "referencedDeclaration": 1583, + "src": "10501:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 705, + "id": 2186, "indexExpression": { "argumentTypes": null, - "id": 704, + "id": 2185, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 694, - "src": "10416:12:1", + "referencedDeclaration": 2175, + "src": "10512:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10423,41 +10683,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10405:24:1", + "src": "10501:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 706, + "id": 2187, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "winningTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 104, - "src": "10405:38:1", + "referencedDeclaration": 1570, + "src": "10501:38:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "10384:59:1" + "src": "10480:59:5" }, { "assignments": [ - 709 + 2190 ], "declarations": [ { "constant": false, - "id": 709, + "id": 2190, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 732, - "src": "10449:15:1", + "scope": 2213, + "src": "10545:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10465,10 +10725,10 @@ "typeString": "uint256" }, "typeName": { - "id": 708, + "id": 2189, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10449:4:1", + "src": "10545:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10478,33 +10738,33 @@ "visibility": "internal" } ], - "id": 714, + "id": 2195, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 710, + "id": 2191, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "10467:10:1", + "referencedDeclaration": 1583, + "src": "10563:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 712, + "id": 2193, "indexExpression": { "argumentTypes": null, - "id": 711, + "id": 2192, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 694, - "src": "10478:12:1", + "referencedDeclaration": 2175, + "src": "10574:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10515,41 +10775,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10467:24:1", + "src": "10563:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 713, + "id": 2194, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 96, - "src": "10467:35:1", + "referencedDeclaration": 1562, + "src": "10563:35:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "10449:53:1" + "src": "10545:53:5" }, { "assignments": [ - 716 + 2197 ], "declarations": [ { "constant": false, - "id": 716, + "id": 2197, "name": "voterTokens", "nodeType": "VariableDeclaration", - "scope": 732, - "src": "10508:16:1", + "scope": 2213, + "src": "10604:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10557,10 +10817,10 @@ "typeString": "uint256" }, "typeName": { - "id": 715, + "id": 2196, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10508:4:1", + "src": "10604:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10570,18 +10830,18 @@ "visibility": "internal" } ], - "id": 723, + "id": 2204, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 719, + "id": 2200, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 692, - "src": "10554:6:1", + "referencedDeclaration": 2173, + "src": "10650:6:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10589,12 +10849,12 @@ }, { "argumentTypes": null, - "id": 720, + "id": 2201, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 694, - "src": "10562:12:1", + "referencedDeclaration": 2175, + "src": "10658:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10602,12 +10862,12 @@ }, { "argumentTypes": null, - "id": 721, + "id": 2202, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 696, - "src": "10576:5:1", + "referencedDeclaration": 2177, + "src": "10672:5:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10631,32 +10891,32 @@ ], "expression": { "argumentTypes": null, - "id": 717, + "id": 2198, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "10527:6:1", + "referencedDeclaration": 1591, + "src": "10623:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 718, + "id": 2199, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getNumPassingTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 3065, - "src": "10527:26:1", + "referencedDeclaration": 1045, + "src": "10623:26:5", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256,uint256) view external returns (uint256)" } }, - "id": 722, + "id": 2203, "isConstant": false, "isLValue": false, "isPure": false, @@ -10664,14 +10924,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10527:55:1", + "src": "10623:55:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "10508:74:1" + "src": "10604:74:5" }, { "expression": { @@ -10680,7 +10940,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 729, + "id": 2210, "isConstant": false, "isLValue": false, "isPure": false, @@ -10694,19 +10954,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 726, + "id": 2207, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 724, + "id": 2205, "name": "voterTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 716, - "src": "10596:11:1", + "referencedDeclaration": 2197, + "src": "10692:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10716,32 +10976,32 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 725, + "id": 2206, "name": "rewardPool", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 709, - "src": "10610:10:1", + "referencedDeclaration": 2190, + "src": "10706:10:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10596:24:1", + "src": "10692:24:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 727, + "id": 2208, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "10595:26:1", + "src": "10691:26:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10751,32 +11011,32 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 728, + "id": 2209, "name": "winningTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 702, - "src": "10624:13:1", + "referencedDeclaration": 2183, + "src": "10720:13:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10595:42:1", + "src": "10691:42:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 700, - "id": 730, + "functionReturnParameters": 2181, + "id": 2211, "nodeType": "Return", - "src": "10588:49:1" + "src": "10684:49:5" } ] }, "documentation": "@dev Calculates the provided voter's token reward for the given poll.\n@param _voter The address of the voter whose reward balance is to be returned\n@param _challengeID The ID of the challenge the voter's reward is being calculated for\n@param _salt The salt of the voter's commit hash in the given poll\n@return The uint indicating the voter's reward", - "id": 732, + "id": 2213, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -10784,16 +11044,16 @@ "name": "voterReward", "nodeType": "FunctionDefinition", "parameters": { - "id": 697, + "id": 2178, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 692, + "id": 2173, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 732, - "src": "10300:14:1", + "scope": 2213, + "src": "10396:14:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10801,10 +11061,10 @@ "typeString": "address" }, "typeName": { - "id": 691, + "id": 2172, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10300:7:1", + "src": "10396:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10815,11 +11075,11 @@ }, { "constant": false, - "id": 694, + "id": 2175, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 732, - "src": "10316:17:1", + "scope": 2213, + "src": "10412:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10827,10 +11087,10 @@ "typeString": "uint256" }, "typeName": { - "id": 693, + "id": 2174, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10316:4:1", + "src": "10412:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10841,11 +11101,11 @@ }, { "constant": false, - "id": 696, + "id": 2177, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 732, - "src": "10335:10:1", + "scope": 2213, + "src": "10431:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10853,10 +11113,10 @@ "typeString": "uint256" }, "typeName": { - "id": 695, + "id": 2176, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10335:4:1", + "src": "10431:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10866,20 +11126,20 @@ "visibility": "internal" } ], - "src": "10299:47:1" + "src": "10395:47:5" }, "payable": false, "returnParameters": { - "id": 700, + "id": 2181, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 699, + "id": 2180, "name": "", "nodeType": "VariableDeclaration", - "scope": 732, - "src": "10370:4:1", + "scope": 2213, + "src": "10466:4:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10887,10 +11147,10 @@ "typeString": "uint256" }, "typeName": { - "id": 698, + "id": 2179, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10370:4:1", + "src": "10466:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10900,47 +11160,47 @@ "visibility": "internal" } ], - "src": "10369:6:1" + "src": "10465:6:5" }, - "scope": 1003, - "src": "10279:363:1", + "scope": 2490, + "src": "10375:363:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 761, + "id": 2242, "nodeType": "Block", - "src": "10921:142:1", + "src": "11017:142:5", "statements": [ { "assignments": [ - 740 + 2221 ], "declarations": [ { "constant": false, - "id": 740, + "id": 2221, "name": "prop", "nodeType": "VariableDeclaration", - "scope": 762, - "src": "10927:25:1", + "scope": 2243, + "src": "11023:25:5", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal" }, "typeName": { "contractScope": null, - "id": 739, + "id": 2220, "name": "ParamProposal", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 94, - "src": "10927:13:1", + "referencedDeclaration": 1560, + "src": "11023:13:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal" } }, @@ -10948,31 +11208,31 @@ "visibility": "internal" } ], - "id": 744, + "id": 2225, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 741, + "id": 2222, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "10955:9:1", + "referencedDeclaration": 1587, + "src": "11051:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 743, + "id": 2224, "indexExpression": { "argumentTypes": null, - "id": 742, + "id": 2223, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 734, - "src": "10965:7:1", + "referencedDeclaration": 2215, + "src": "11061:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -10983,14 +11243,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10955:18:1", + "src": "11051:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "10927:46:1" + "src": "11023:46:5" }, { "expression": { @@ -11002,7 +11262,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 758, + "id": 2239, "isConstant": false, "isLValue": false, "isPure": false, @@ -11013,7 +11273,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 753, + "id": 2234, "isConstant": false, "isLValue": false, "isPure": false, @@ -11024,19 +11284,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 748, + "id": 2229, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 745, + "id": 2226, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "10988:3:1", + "referencedDeclaration": 3704, + "src": "11084:3:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11048,32 +11308,32 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 746, + "id": 2227, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "10994:4:1", + "referencedDeclaration": 2221, + "src": "11090:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 747, + "id": 2228, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "appExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "10994:14:1", + "referencedDeclaration": 1547, + "src": "11090:14:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10988:20:1", + "src": "11084:20:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11087,19 +11347,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 752, + "id": 2233, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 749, + "id": 2230, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "11012:3:1", + "referencedDeclaration": 3704, + "src": "11108:3:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11111,38 +11371,38 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 750, + "id": 2231, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "11018:4:1", + "referencedDeclaration": 2221, + "src": "11114:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 751, + "id": 2232, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "processBy", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "11018:14:1", + "referencedDeclaration": 1557, + "src": "11114:14:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11012:20:1", + "src": "11108:20:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "10988:44:1", + "src": "11084:44:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11156,7 +11416,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 757, + "id": 2238, "isConstant": false, "isLValue": false, "isPure": false, @@ -11165,26 +11425,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 754, + "id": 2235, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "11036:4:1", + "referencedDeclaration": 2221, + "src": "11132:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 755, + "id": 2236, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11036:16:1", + "referencedDeclaration": 1549, + "src": "11132:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11195,14 +11455,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 756, + "id": 2237, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11056:1:1", + "src": "11152:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -11210,41 +11470,41 @@ }, "value": "0" }, - "src": "11036:21:1", + "src": "11132:21:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "10988:69:1", + "src": "11084:69:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 759, + "id": 2240, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "10987:71:1", + "src": "11083:71:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 738, - "id": 760, + "functionReturnParameters": 2219, + "id": 2241, "nodeType": "Return", - "src": "10980:78:1" + "src": "11076:78:5" } ] }, "documentation": "@notice Determines whether a proposal passed its application stage without a challenge\n@param _propID The proposal ID for which to determine whether its application stage passed without a challenge", - "id": 762, + "id": 2243, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -11252,16 +11512,16 @@ "name": "canBeSet", "nodeType": "FunctionDefinition", "parameters": { - "id": 735, + "id": 2216, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 734, + "id": 2215, "name": "_propID", "nodeType": "VariableDeclaration", - "scope": 762, - "src": "10877:15:1", + "scope": 2243, + "src": "10973:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11269,10 +11529,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 733, + "id": 2214, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "10877:7:1", + "src": "10973:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -11282,20 +11542,20 @@ "visibility": "internal" } ], - "src": "10876:17:1" + "src": "10972:17:5" }, "payable": false, "returnParameters": { - "id": 738, + "id": 2219, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 737, + "id": 2218, "name": "", "nodeType": "VariableDeclaration", - "scope": 762, - "src": "10915:4:1", + "scope": 2243, + "src": "11011:4:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11303,10 +11563,10 @@ "typeString": "bool" }, "typeName": { - "id": 736, + "id": 2217, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "10915:4:1", + "src": "11011:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11316,19 +11576,19 @@ "visibility": "internal" } ], - "src": "10914:6:1" + "src": "11010:6:5" }, - "scope": 1003, - "src": "10859:204:1", + "scope": 2490, + "src": "10955:204:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 776, + "id": 2257, "nodeType": "Block", - "src": "11287:50:1", + "src": "11383:50:5", "statements": [ { "expression": { @@ -11337,7 +11597,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 774, + "id": 2255, "isConstant": false, "isLValue": false, "isPure": false, @@ -11348,26 +11608,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 769, + "id": 2250, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "11300:9:1", + "referencedDeclaration": 1587, + "src": "11396:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 771, + "id": 2252, "indexExpression": { "argumentTypes": null, - "id": 770, + "id": 2251, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 764, - "src": "11310:7:1", + "referencedDeclaration": 2245, + "src": "11406:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -11378,21 +11638,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11300:18:1", + "src": "11396:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, - "id": 772, + "id": 2253, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "processBy", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "11300:28:1", + "referencedDeclaration": 1557, + "src": "11396:28:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11403,14 +11663,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 773, + "id": 2254, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11331:1:1", + "src": "11427:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -11418,21 +11678,21 @@ }, "value": "0" }, - "src": "11300:32:1", + "src": "11396:32:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 768, - "id": 775, + "functionReturnParameters": 2249, + "id": 2256, "nodeType": "Return", - "src": "11293:39:1" + "src": "11389:39:5" } ] }, "documentation": "@notice Determines whether a proposal exists for the provided proposal ID\n@param _propID The proposal ID whose existance is to be determined", - "id": 777, + "id": 2258, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -11440,16 +11700,16 @@ "name": "propExists", "nodeType": "FunctionDefinition", "parameters": { - "id": 765, + "id": 2246, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 764, + "id": 2245, "name": "_propID", "nodeType": "VariableDeclaration", - "scope": 777, - "src": "11243:15:1", + "scope": 2258, + "src": "11339:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11457,10 +11717,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 763, + "id": 2244, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "11243:7:1", + "src": "11339:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -11470,20 +11730,20 @@ "visibility": "internal" } ], - "src": "11242:17:1" + "src": "11338:17:5" }, "payable": false, "returnParameters": { - "id": 768, + "id": 2249, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 767, + "id": 2248, "name": "", "nodeType": "VariableDeclaration", - "scope": 777, - "src": "11281:4:1", + "scope": 2258, + "src": "11377:4:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11491,10 +11751,10 @@ "typeString": "bool" }, "typeName": { - "id": 766, + "id": 2247, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "11281:4:1", + "src": "11377:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11504,47 +11764,47 @@ "visibility": "internal" } ], - "src": "11280:6:1" + "src": "11376:6:5" }, - "scope": 1003, - "src": "11223:114:1", + "scope": 2490, + "src": "11319:114:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 814, + "id": 2295, "nodeType": "Block", - "src": "11580:225:1", + "src": "11676:225:5", "statements": [ { "assignments": [ - 785 + 2266 ], "declarations": [ { "constant": false, - "id": 785, + "id": 2266, "name": "prop", "nodeType": "VariableDeclaration", - "scope": 815, - "src": "11586:25:1", + "scope": 2296, + "src": "11682:25:5", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal" }, "typeName": { "contractScope": null, - "id": 784, + "id": 2265, "name": "ParamProposal", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 94, - "src": "11586:13:1", + "referencedDeclaration": 1560, + "src": "11682:13:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal" } }, @@ -11552,31 +11812,31 @@ "visibility": "internal" } ], - "id": 789, + "id": 2270, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 786, + "id": 2267, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "11614:9:1", + "referencedDeclaration": 1587, + "src": "11710:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 788, + "id": 2269, "indexExpression": { "argumentTypes": null, - "id": 787, + "id": 2268, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 779, - "src": "11624:7:1", + "referencedDeclaration": 2260, + "src": "11720:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -11587,42 +11847,42 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11614:18:1", + "src": "11710:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "11586:46:1" + "src": "11682:46:5" }, { "assignments": [ - 791 + 2272 ], "declarations": [ { "constant": false, - "id": 791, + "id": 2272, "name": "challenge", "nodeType": "VariableDeclaration", - "scope": 815, - "src": "11638:26:1", + "scope": 2296, + "src": "11734:26:5", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_memory_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_memory_ptr", "typeString": "struct Parameterizer.Challenge" }, "typeName": { "contractScope": null, - "id": 790, + "id": 2271, "name": "Challenge", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 109, - "src": "11638:9:1", + "referencedDeclaration": 1575, + "src": "11734:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge" } }, @@ -11630,47 +11890,47 @@ "visibility": "internal" } ], - "id": 796, + "id": 2277, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 792, + "id": 2273, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "11667:10:1", + "referencedDeclaration": 1583, + "src": "11763:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 795, + "id": 2276, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 793, + "id": 2274, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 785, - "src": "11678:4:1", + "referencedDeclaration": 2266, + "src": "11774:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 794, + "id": 2275, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11678:16:1", + "referencedDeclaration": 1549, + "src": "11774:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11681,14 +11941,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11667:28:1", + "src": "11763:28:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "11638:57:1" + "src": "11734:57:5" }, { "expression": { @@ -11700,7 +11960,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 811, + "id": 2292, "isConstant": false, "isLValue": false, "isPure": false, @@ -11711,7 +11971,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 805, + "id": 2286, "isConstant": false, "isLValue": false, "isPure": false, @@ -11722,7 +11982,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 800, + "id": 2281, "isConstant": false, "isLValue": false, "isPure": false, @@ -11731,26 +11991,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 797, + "id": 2278, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 785, - "src": "11710:4:1", + "referencedDeclaration": 2266, + "src": "11806:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 798, + "id": 2279, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11710:16:1", + "referencedDeclaration": 1549, + "src": "11806:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11761,14 +12021,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 799, + "id": 2280, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11729:1:1", + "src": "11825:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -11776,7 +12036,7 @@ }, "value": "0" }, - "src": "11710:20:1", + "src": "11806:20:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11790,7 +12050,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 804, + "id": 2285, "isConstant": false, "isLValue": false, "isPure": false, @@ -11799,26 +12059,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 801, + "id": 2282, "name": "challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 791, - "src": "11734:9:1", + "referencedDeclaration": 2272, + "src": "11830:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_memory_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_memory_ptr", "typeString": "struct Parameterizer.Challenge memory" } }, - "id": 802, + "id": 2283, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 100, - "src": "11734:18:1", + "referencedDeclaration": 1566, + "src": "11830:18:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11829,14 +12089,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 803, + "id": 2284, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "11756:5:1", + "src": "11852:5:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -11844,13 +12104,13 @@ }, "value": "false" }, - "src": "11734:27:1", + "src": "11830:27:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "11710:51:1", + "src": "11806:51:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11865,26 +12125,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 808, + "id": 2289, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 785, - "src": "11782:4:1", + "referencedDeclaration": 2266, + "src": "11878:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 809, + "id": 2290, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11782:16:1", + "referencedDeclaration": 1549, + "src": "11878:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11900,32 +12160,32 @@ ], "expression": { "argumentTypes": null, - "id": 806, + "id": 2287, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "11765:6:1", + "referencedDeclaration": 1591, + "src": "11861:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 807, + "id": 2288, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "pollEnded", "nodeType": "MemberAccess", - "referencedDeclaration": 3207, - "src": "11765:16:1", + "referencedDeclaration": 1187, + "src": "11861:16:5", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view external returns (bool)" } }, - "id": 810, + "id": 2291, "isConstant": false, "isLValue": false, "isPure": false, @@ -11933,41 +12193,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11765:34:1", + "src": "11861:34:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "11710:89:1", + "src": "11806:89:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 812, + "id": 2293, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11709:91:1", + "src": "11805:91:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 783, - "id": 813, + "functionReturnParameters": 2264, + "id": 2294, "nodeType": "Return", - "src": "11702:98:1" + "src": "11798:98:5" } ] }, "documentation": "@notice Determines whether the provided proposal ID has a challenge which can be resolved\n@param _propID The proposal ID whose challenge to inspect", - "id": 815, + "id": 2296, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -11975,16 +12235,16 @@ "name": "challengeCanBeResolved", "nodeType": "FunctionDefinition", "parameters": { - "id": 780, + "id": 2261, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 779, + "id": 2260, "name": "_propID", "nodeType": "VariableDeclaration", - "scope": 815, - "src": "11536:15:1", + "scope": 2296, + "src": "11632:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11992,10 +12252,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 778, + "id": 2259, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "11536:7:1", + "src": "11632:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12005,20 +12265,20 @@ "visibility": "internal" } ], - "src": "11535:17:1" + "src": "11631:17:5" }, "payable": false, "returnParameters": { - "id": 783, + "id": 2264, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 782, + "id": 2263, "name": "", "nodeType": "VariableDeclaration", - "scope": 815, - "src": "11574:4:1", + "scope": 2296, + "src": "11670:4:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12026,10 +12286,10 @@ "typeString": "bool" }, "typeName": { - "id": 781, + "id": 2262, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "11574:4:1", + "src": "11670:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -12039,19 +12299,19 @@ "visibility": "internal" } ], - "src": "11573:6:1" + "src": "11669:6:5" }, - "scope": 1003, - "src": "11504:301:1", + "scope": 2490, + "src": "11600:301:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 850, + "id": 2331, "nodeType": "Block", - "src": "12050:293:1", + "src": "12146:293:5", "statements": [ { "condition": { @@ -12060,7 +12320,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 827, + "id": 2308, "isConstant": false, "isLValue": false, "isPure": false, @@ -12070,12 +12330,12 @@ "arguments": [ { "argumentTypes": null, - "id": 824, + "id": 2305, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 817, - "src": "12106:12:1", + "referencedDeclaration": 2298, + "src": "12202:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12091,32 +12351,32 @@ ], "expression": { "argumentTypes": null, - "id": 822, + "id": 2303, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "12060:6:1", + "referencedDeclaration": 1591, + "src": "12156:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 823, + "id": 2304, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getTotalNumberOfTokensForWinningOption", "nodeType": "MemberAccess", - "referencedDeclaration": 3186, - "src": "12060:45:1", + "referencedDeclaration": 1166, + "src": "12156:45:5", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256) view external returns (uint256)" } }, - "id": 825, + "id": 2306, "isConstant": false, "isLValue": false, "isPure": false, @@ -12124,7 +12384,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12060:59:1", + "src": "12156:59:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12135,14 +12395,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 826, + "id": 2307, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12123:1:1", + "src": "12219:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -12150,20 +12410,20 @@ }, "value": "0" }, - "src": "12060:64:1", + "src": "12156:64:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 836, + "id": 2317, "nodeType": "IfStatement", - "src": "12056:195:1", + "src": "12152:195:5", "trueBody": { - "id": 835, + "id": 2316, "nodeType": "Block", - "src": "12126:125:1", + "src": "12222:125:5", "statements": [ { "expression": { @@ -12172,7 +12432,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 833, + "id": 2314, "isConstant": false, "isLValue": false, "isPure": false, @@ -12180,14 +12440,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "32", - "id": 828, + "id": 2309, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12210:1:1", + "src": "12306:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", @@ -12203,26 +12463,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 829, + "id": 2310, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "12214:10:1", + "referencedDeclaration": 1583, + "src": "12310:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 831, + "id": 2312, "indexExpression": { "argumentTypes": null, - "id": 830, + "id": 2311, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 817, - "src": "12225:12:1", + "referencedDeclaration": 2298, + "src": "12321:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12233,36 +12493,36 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12214:24:1", + "src": "12310:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 832, + "id": 2313, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "stake", "nodeType": "MemberAccess", - "referencedDeclaration": 102, - "src": "12214:30:1", + "referencedDeclaration": 1568, + "src": "12310:30:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12210:34:1", + "src": "12306:34:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 821, - "id": 834, + "functionReturnParameters": 2302, + "id": 2315, "nodeType": "Return", - "src": "12203:41:1" + "src": "12299:41:5" } ] } @@ -12274,7 +12534,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 848, + "id": 2329, "isConstant": false, "isLValue": false, "isPure": false, @@ -12288,7 +12548,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 842, + "id": 2323, "isConstant": false, "isLValue": false, "isPure": false, @@ -12296,14 +12556,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "32", - "id": 837, + "id": 2318, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12265:1:1", + "src": "12361:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", @@ -12319,26 +12579,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 838, + "id": 2319, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "12269:10:1", + "referencedDeclaration": 1583, + "src": "12365:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 840, + "id": 2321, "indexExpression": { "argumentTypes": null, - "id": 839, + "id": 2320, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 817, - "src": "12280:12:1", + "referencedDeclaration": 2298, + "src": "12376:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12349,41 +12609,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12269:24:1", + "src": "12365:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 841, + "id": 2322, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "stake", "nodeType": "MemberAccess", - "referencedDeclaration": 102, - "src": "12269:30:1", + "referencedDeclaration": 1568, + "src": "12365:30:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12265:34:1", + "src": "12361:34:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 843, + "id": 2324, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "12264:36:1", + "src": "12360:36:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12397,26 +12657,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 844, + "id": 2325, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "12303:10:1", + "referencedDeclaration": 1583, + "src": "12399:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 846, + "id": 2327, "indexExpression": { "argumentTypes": null, - "id": 845, + "id": 2326, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 817, - "src": "12314:12:1", + "referencedDeclaration": 2298, + "src": "12410:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12427,41 +12687,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12303:24:1", + "src": "12399:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 847, + "id": 2328, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 96, - "src": "12303:35:1", + "referencedDeclaration": 1562, + "src": "12399:35:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12264:74:1", + "src": "12360:74:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 821, - "id": 849, + "functionReturnParameters": 2302, + "id": 2330, "nodeType": "Return", - "src": "12257:81:1" + "src": "12353:81:5" } ] }, "documentation": "@notice Determines the number of tokens to awarded to the winning party in a challenge\n@param _challengeID The challengeID to determine a reward for", - "id": 851, + "id": 2332, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -12469,16 +12729,16 @@ "name": "challengeWinnerReward", "nodeType": "FunctionDefinition", "parameters": { - "id": 818, + "id": 2299, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 817, + "id": 2298, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 851, - "src": "12004:17:1", + "scope": 2332, + "src": "12100:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12486,10 +12746,10 @@ "typeString": "uint256" }, "typeName": { - "id": 816, + "id": 2297, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12004:4:1", + "src": "12100:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12499,20 +12759,20 @@ "visibility": "internal" } ], - "src": "12003:19:1" + "src": "12099:19:5" }, "payable": false, "returnParameters": { - "id": 821, + "id": 2302, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 820, + "id": 2301, "name": "", "nodeType": "VariableDeclaration", - "scope": 851, - "src": "12044:4:1", + "scope": 2332, + "src": "12140:4:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12520,10 +12780,10 @@ "typeString": "uint256" }, "typeName": { - "id": 819, + "id": 2300, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12044:4:1", + "src": "12140:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12533,73 +12793,125 @@ "visibility": "internal" } ], - "src": "12043:6:1" + "src": "12139:6:5" }, - "scope": 1003, - "src": "11973:370:1", + "scope": 2490, + "src": "12069:370:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 864, + "id": 2348, "nodeType": "Block", - "src": "12559:42:1", + "src": "12655:60:5", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 858, + "id": 2339, "name": "params", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 113, - "src": "12572:6:1", + "referencedDeclaration": 1579, + "src": "12668:6:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 862, + "id": 2346, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 860, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 853, - "src": "12589:5:1", + "arguments": [ + { + "argumentTypes": null, + "id": 2343, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2334, + "src": "12702:5:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2341, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "12685:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2342, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "12685:16:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12685:23:5", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 859, + "id": 2340, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "12579:9:1", + "referencedDeclaration": 3696, + "src": "12675:9:5", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 861, + "id": 2345, "isConstant": false, "isLValue": false, "isPure": false, @@ -12607,7 +12919,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12579:16:1", + "src": "12675:34:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12618,21 +12930,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12572:24:1", + "src": "12668:42:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 857, - "id": 863, + "functionReturnParameters": 2338, + "id": 2347, "nodeType": "Return", - "src": "12565:31:1" + "src": "12661:49:5" } ] }, "documentation": "@notice gets the parameter keyed by the provided name value from the params mapping\n@param _name the key whose value is to be determined", - "id": 865, + "id": 2349, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -12640,16 +12952,16 @@ "name": "get", "nodeType": "FunctionDefinition", "parameters": { - "id": 854, + "id": 2335, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 853, + "id": 2334, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 865, - "src": "12512:12:1", + "scope": 2349, + "src": "12608:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12657,10 +12969,10 @@ "typeString": "string" }, "typeName": { - "id": 852, + "id": 2333, "name": "string", "nodeType": "ElementaryTypeName", - "src": "12512:6:1", + "src": "12608:6:5", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -12670,20 +12982,20 @@ "visibility": "internal" } ], - "src": "12511:14:1" + "src": "12607:14:5" }, "payable": false, "returnParameters": { - "id": 857, + "id": 2338, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 856, + "id": 2337, "name": "value", "nodeType": "VariableDeclaration", - "scope": 865, - "src": "12547:10:1", + "scope": 2349, + "src": "12643:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12691,10 +13003,10 @@ "typeString": "uint256" }, "typeName": { - "id": 855, + "id": 2336, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12547:4:1", + "src": "12643:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12704,19 +13016,19 @@ "visibility": "internal" } ], - "src": "12546:12:1" + "src": "12642:12:5" }, - "scope": 1003, - "src": "12499:102:1", + "scope": 2490, + "src": "12595:120:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 881, + "id": 2365, "nodeType": "Block", - "src": "12899:62:1", + "src": "13013:62:5", "statements": [ { "expression": { @@ -12727,26 +13039,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 874, + "id": 2358, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "12912:10:1", + "referencedDeclaration": 1583, + "src": "13026:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 876, + "id": 2360, "indexExpression": { "argumentTypes": null, - "id": 875, + "id": 2359, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 867, - "src": "12923:12:1", + "referencedDeclaration": 2351, + "src": "13037:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12757,35 +13069,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12912:24:1", + "src": "13026:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 877, + "id": 2361, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokenClaims", "nodeType": "MemberAccess", - "referencedDeclaration": 108, - "src": "12912:36:1", + "referencedDeclaration": 1574, + "src": "13026:36:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 879, + "id": 2363, "indexExpression": { "argumentTypes": null, - "id": 878, + "id": 2362, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 869, - "src": "12949:6:1", + "referencedDeclaration": 2353, + "src": "13063:6:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12796,21 +13108,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12912:44:1", + "src": "13026:44:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 873, - "id": 880, + "functionReturnParameters": 2357, + "id": 2364, "nodeType": "Return", - "src": "12905:51:1" + "src": "13019:51:5" } ] }, "documentation": "@dev Getter for Challenge tokenClaims mappings\n@param _challengeID The challengeID to query\n@param _voter The voter whose claim status to query for the provided challengeID", - "id": 882, + "id": 2366, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -12818,16 +13130,16 @@ "name": "tokenClaims", "nodeType": "FunctionDefinition", "parameters": { - "id": 870, + "id": 2354, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 867, + "id": 2351, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 882, - "src": "12837:17:1", + "scope": 2366, + "src": "12951:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12835,10 +13147,10 @@ "typeString": "uint256" }, "typeName": { - "id": 866, + "id": 2350, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12837:4:1", + "src": "12951:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12849,11 +13161,11 @@ }, { "constant": false, - "id": 869, + "id": 2353, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 882, - "src": "12856:14:1", + "scope": 2366, + "src": "12970:14:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12861,10 +13173,10 @@ "typeString": "address" }, "typeName": { - "id": 868, + "id": 2352, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12856:7:1", + "src": "12970:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12874,20 +13186,20 @@ "visibility": "internal" } ], - "src": "12836:35:1" + "src": "12950:35:5" }, "payable": false, "returnParameters": { - "id": 873, + "id": 2357, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 872, + "id": 2356, "name": "", "nodeType": "VariableDeclaration", - "scope": 882, - "src": "12893:4:1", + "scope": 2366, + "src": "13007:4:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12895,10 +13207,10 @@ "typeString": "bool" }, "typeName": { - "id": 871, + "id": 2355, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "12893:4:1", + "src": "13007:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -12908,47 +13220,47 @@ "visibility": "internal" } ], - "src": "12892:6:1" + "src": "13006:6:5" }, - "scope": 1003, - "src": "12816:145:1", + "scope": 2490, + "src": "12930:145:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 985, + "id": 2469, "nodeType": "Block", - "src": "13289:943:1", + "src": "13403:1025:5", "statements": [ { "assignments": [ - 888 + 2372 ], "declarations": [ { "constant": false, - "id": 888, + "id": 2372, "name": "prop", "nodeType": "VariableDeclaration", - "scope": 986, - "src": "13295:25:1", + "scope": 2470, + "src": "13409:25:5", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal" }, "typeName": { "contractScope": null, - "id": 887, + "id": 2371, "name": "ParamProposal", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 94, - "src": "13295:13:1", + "referencedDeclaration": 1560, + "src": "13409:13:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal" } }, @@ -12956,31 +13268,31 @@ "visibility": "internal" } ], - "id": 892, + "id": 2376, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 889, + "id": 2373, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "13323:9:1", + "referencedDeclaration": 1587, + "src": "13437:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 891, + "id": 2375, "indexExpression": { "argumentTypes": null, - "id": 890, + "id": 2374, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "13333:7:1", + "referencedDeclaration": 2368, + "src": "13447:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12991,42 +13303,42 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13323:18:1", + "src": "13437:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "13295:46:1" + "src": "13409:46:5" }, { "assignments": [ - 894 + 2378 ], "declarations": [ { "constant": false, - "id": 894, + "id": 2378, "name": "challenge", "nodeType": "VariableDeclaration", - "scope": 986, - "src": "13347:27:1", + "scope": 2470, + "src": "13461:27:5", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge" }, "typeName": { "contractScope": null, - "id": 893, + "id": 2377, "name": "Challenge", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 109, - "src": "13347:9:1", + "referencedDeclaration": 1575, + "src": "13461:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge" } }, @@ -13034,47 +13346,47 @@ "visibility": "internal" } ], - "id": 899, + "id": 2383, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 895, + "id": 2379, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "13377:10:1", + "referencedDeclaration": 1583, + "src": "13491:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 898, + "id": 2382, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 896, + "id": 2380, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13388:4:1", + "referencedDeclaration": 2372, + "src": "13502:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 897, + "id": 2381, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "13388:16:1", + "referencedDeclaration": 1549, + "src": "13502:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13085,27 +13397,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13377:28:1", + "src": "13491:28:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "13347:58:1" + "src": "13461:58:5" }, { "assignments": [ - 901 + 2385 ], "declarations": [ { "constant": false, - "id": 901, + "id": 2385, "name": "reward", "nodeType": "VariableDeclaration", - "scope": 986, - "src": "13497:11:1", + "scope": 2470, + "src": "13611:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13113,10 +13425,10 @@ "typeString": "uint256" }, "typeName": { - "id": 900, + "id": 2384, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "13497:4:1", + "src": "13611:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13126,7 +13438,7 @@ "visibility": "internal" } ], - "id": 906, + "id": 2390, "initialValue": { "argumentTypes": null, "arguments": [ @@ -13134,26 +13446,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 903, + "id": 2387, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13533:4:1", + "referencedDeclaration": 2372, + "src": "13647:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 904, + "id": 2388, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "13533:16:1", + "referencedDeclaration": 1549, + "src": "13647:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13167,18 +13479,18 @@ "typeString": "uint256" } ], - "id": 902, + "id": 2386, "name": "challengeWinnerReward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 851, - "src": "13511:21:1", + "referencedDeclaration": 2332, + "src": "13625:21:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256) view returns (uint256)" } }, - "id": 905, + "id": 2389, "isConstant": false, "isLValue": false, "isPure": false, @@ -13186,19 +13498,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13511:39:1", + "src": "13625:39:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "13497:53:1" + "src": "13611:53:5" }, { "expression": { "argumentTypes": null, - "id": 915, + "id": 2399, "isConstant": false, "isLValue": false, "isPure": false, @@ -13207,26 +13519,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 907, + "id": 2391, "name": "challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "13557:9:1", + "referencedDeclaration": 2378, + "src": "13671:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge storage pointer" } }, - "id": 909, + "id": 2393, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "winningTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 104, - "src": "13557:23:1", + "referencedDeclaration": 1570, + "src": "13671:23:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13241,26 +13553,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 912, + "id": 2396, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13629:4:1", + "referencedDeclaration": 2372, + "src": "13743:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 913, + "id": 2397, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "13629:16:1", + "referencedDeclaration": 1549, + "src": "13743:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13276,32 +13588,32 @@ ], "expression": { "argumentTypes": null, - "id": 910, + "id": 2394, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "13583:6:1", + "referencedDeclaration": 1591, + "src": "13697:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 911, + "id": 2395, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getTotalNumberOfTokensForWinningOption", "nodeType": "MemberAccess", - "referencedDeclaration": 3186, - "src": "13583:45:1", + "referencedDeclaration": 1166, + "src": "13697:45:5", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256) view external returns (uint256)" } }, - "id": 914, + "id": 2398, "isConstant": false, "isLValue": false, "isPure": false, @@ -13309,26 +13621,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13583:63:1", + "src": "13697:63:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13557:89:1", + "src": "13671:89:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 916, + "id": 2400, "nodeType": "ExpressionStatement", - "src": "13557:89:1" + "src": "13671:89:5" }, { "expression": { "argumentTypes": null, - "id": 921, + "id": 2405, "isConstant": false, "isLValue": false, "isPure": false, @@ -13337,26 +13649,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 917, + "id": 2401, "name": "challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "13652:9:1", + "referencedDeclaration": 2378, + "src": "13766:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge storage pointer" } }, - "id": 919, + "id": 2403, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 100, - "src": "13652:18:1", + "referencedDeclaration": 1566, + "src": "13766:18:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -13367,14 +13679,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 920, + "id": 2404, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "13673:4:1", + "src": "13787:4:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -13382,15 +13694,15 @@ }, "value": "true" }, - "src": "13652:25:1", + "src": "13766:25:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 922, + "id": 2406, "nodeType": "ExpressionStatement", - "src": "13652:25:1" + "src": "13766:25:5" }, { "condition": { @@ -13400,26 +13712,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 925, + "id": 2409, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13704:4:1", + "referencedDeclaration": 2372, + "src": "13818:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 926, + "id": 2410, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "13704:16:1", + "referencedDeclaration": 1549, + "src": "13818:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13435,32 +13747,32 @@ ], "expression": { "argumentTypes": null, - "id": 923, + "id": 2407, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "13688:6:1", + "referencedDeclaration": 1591, + "src": "13802:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 924, + "id": 2408, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "isPassed", "nodeType": "MemberAccess", - "referencedDeclaration": 3158, - "src": "13688:15:1", + "referencedDeclaration": 1138, + "src": "13802:15:5", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view external returns (bool)" } }, - "id": 927, + "id": 2411, "isConstant": false, "isLValue": false, "isPure": false, @@ -13468,16 +13780,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13688:33:1", + "src": "13802:33:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 983, + "id": 2467, "nodeType": "Block", - "src": "13992:236:1", + "src": "14147:277:5", "statements": [ { "eventCall": { @@ -13485,12 +13797,12 @@ "arguments": [ { "argumentTypes": null, - "id": 962, + "id": 2446, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "14068:7:1", + "referencedDeclaration": 2368, + "src": "14232:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -13500,26 +13812,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 963, + "id": 2447, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "14077:4:1", + "referencedDeclaration": 2372, + "src": "14249:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 964, + "id": 2448, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "14077:16:1", + "referencedDeclaration": 1549, + "src": "14249:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13529,26 +13841,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 965, + "id": 2449, "name": "challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "14095:9:1", + "referencedDeclaration": 2378, + "src": "14275:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge storage pointer" } }, - "id": 966, + "id": 2450, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 96, - "src": "14095:20:1", + "referencedDeclaration": 1562, + "src": "14275:20:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13558,26 +13870,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 967, + "id": 2451, "name": "challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "14117:9:1", + "referencedDeclaration": 2378, + "src": "14305:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge storage pointer" } }, - "id": 968, + "id": 2452, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "winningTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 104, - "src": "14117:23:1", + "referencedDeclaration": 1570, + "src": "14305:23:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13603,18 +13915,18 @@ "typeString": "uint256" } ], - "id": 961, + "id": 2445, "name": "_ChallengeSucceeded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 58, - "src": "14048:19:1", + "referencedDeclaration": 1524, + "src": "14203:19:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (bytes32,uint256,uint256,uint256)" } }, - "id": 969, + "id": 2453, "isConstant": false, "isLValue": false, "isPure": false, @@ -13622,15 +13934,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14048:93:1", + "src": "14203:133:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 970, + "id": 2454, "nodeType": "EmitStatement", - "src": "14043:98:1" + "src": "14198:138:5" }, { "expression": { @@ -13645,42 +13957,42 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 974, + "id": 2458, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "14172:10:1", + "referencedDeclaration": 1583, + "src": "14368:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 977, + "id": 2461, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 975, + "id": 2459, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "14183:4:1", + "referencedDeclaration": 2372, + "src": "14379:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 976, + "id": 2460, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "14183:16:1", + "referencedDeclaration": 1549, + "src": "14379:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13691,21 +14003,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14172:28:1", + "src": "14368:28:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 978, + "id": 2462, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challenger", "nodeType": "MemberAccess", - "referencedDeclaration": 98, - "src": "14172:39:1", + "referencedDeclaration": 1564, + "src": "14368:39:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13713,12 +14025,12 @@ }, { "argumentTypes": null, - "id": 979, + "id": 2463, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 901, - "src": "14213:6:1", + "referencedDeclaration": 2385, + "src": "14409:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13738,32 +14050,32 @@ ], "expression": { "argumentTypes": null, - "id": 972, + "id": 2456, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "14157:5:1", + "referencedDeclaration": 1589, + "src": "14353:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 973, + "id": 2457, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "14157:14:1", + "referencedDeclaration": 431, + "src": "14353:14:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 980, + "id": 2464, "isConstant": false, "isLValue": false, "isPure": false, @@ -13771,7 +14083,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14157:63:1", + "src": "14353:63:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -13785,21 +14097,21 @@ "typeString": "bool" } ], - "id": 971, + "id": 2455, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "14149:7:1", + "referencedDeclaration": 3705, + "src": "14345:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 981, + "id": 2465, "isConstant": false, "isLValue": false, "isPure": false, @@ -13807,25 +14119,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14149:72:1", + "src": "14345:72:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 982, + "id": 2466, "nodeType": "ExpressionStatement", - "src": "14149:72:1" + "src": "14345:72:5" } ] }, - "id": 984, + "id": 2468, "nodeType": "IfStatement", - "src": "13684:544:1", + "src": "13798:626:5", "trueBody": { - "id": 960, + "id": 2444, "nodeType": "Block", - "src": "13723:263:1", + "src": "13837:304:5", "statements": [ { "condition": { @@ -13834,7 +14146,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 931, + "id": 2415, "isConstant": false, "isLValue": false, "isPure": false, @@ -13843,26 +14155,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 928, + "id": 2412, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13759:4:1", + "referencedDeclaration": 2372, + "src": "13873:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 929, + "id": 2413, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "processBy", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "13759:14:1", + "referencedDeclaration": 1557, + "src": "13873:14:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13872,31 +14184,31 @@ "operator": ">", "rightExpression": { "argumentTypes": null, - "id": 930, + "id": 2414, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "13776:3:1", + "referencedDeclaration": 3704, + "src": "13890:3:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13759:20:1", + "src": "13873:20:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 940, + "id": 2424, "nodeType": "IfStatement", - "src": "13755:71:1", + "src": "13869:71:5", "trueBody": { - "id": 939, + "id": 2423, "nodeType": "Block", - "src": "13781:45:1", + "src": "13895:45:5", "statements": [ { "expression": { @@ -13906,26 +14218,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 933, + "id": 2417, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13795:4:1", + "referencedDeclaration": 2372, + "src": "13909:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 934, + "id": 2418, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "name", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "13795:9:1", + "referencedDeclaration": 1553, + "src": "13909:9:5", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -13935,26 +14247,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 935, + "id": 2419, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13806:4:1", + "referencedDeclaration": 2372, + "src": "13920:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 936, + "id": 2420, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 93, - "src": "13806:10:1", + "referencedDeclaration": 1559, + "src": "13920:10:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13972,18 +14284,18 @@ "typeString": "uint256" } ], - "id": 932, + "id": 2416, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "13791:3:1", + "referencedDeclaration": 2489, + "src": "13905:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 937, + "id": 2421, "isConstant": false, "isLValue": false, "isPure": false, @@ -13991,15 +14303,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13791:26:1", + "src": "13905:26:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 938, + "id": 2422, "nodeType": "ExpressionStatement", - "src": "13791:26:1" + "src": "13905:26:5" } ] } @@ -14010,12 +14322,12 @@ "arguments": [ { "argumentTypes": null, - "id": 942, + "id": 2426, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "13855:7:1", + "referencedDeclaration": 2368, + "src": "13978:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14025,26 +14337,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 943, + "id": 2427, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13864:4:1", + "referencedDeclaration": 2372, + "src": "13995:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 944, + "id": 2428, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "13864:16:1", + "referencedDeclaration": 1549, + "src": "13995:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14054,26 +14366,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 945, + "id": 2429, "name": "challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "13882:9:1", + "referencedDeclaration": 2378, + "src": "14021:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge storage pointer" } }, - "id": 946, + "id": 2430, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 96, - "src": "13882:20:1", + "referencedDeclaration": 1562, + "src": "14021:20:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14083,26 +14395,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 947, + "id": 2431, "name": "challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "13904:9:1", + "referencedDeclaration": 2378, + "src": "14051:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge storage pointer" } }, - "id": 948, + "id": 2432, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "winningTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 104, - "src": "13904:23:1", + "referencedDeclaration": 1570, + "src": "14051:23:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14128,18 +14440,18 @@ "typeString": "uint256" } ], - "id": 941, + "id": 2425, "name": "_ChallengeFailed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "13838:16:1", + "referencedDeclaration": 1534, + "src": "13952:16:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (bytes32,uint256,uint256,uint256)" } }, - "id": 949, + "id": 2433, "isConstant": false, "isLValue": false, "isPure": false, @@ -14147,15 +14459,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13838:90:1", + "src": "13952:130:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 950, + "id": 2434, "nodeType": "EmitStatement", - "src": "13833:95:1" + "src": "13947:135:5" }, { "expression": { @@ -14168,26 +14480,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 954, + "id": 2438, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13959:4:1", + "referencedDeclaration": 2372, + "src": "14114:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 955, + "id": 2439, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 89, - "src": "13959:10:1", + "referencedDeclaration": 1555, + "src": "14114:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14195,12 +14507,12 @@ }, { "argumentTypes": null, - "id": 956, + "id": 2440, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 901, - "src": "13971:6:1", + "referencedDeclaration": 2385, + "src": "14126:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14220,32 +14532,32 @@ ], "expression": { "argumentTypes": null, - "id": 952, + "id": 2436, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "13944:5:1", + "referencedDeclaration": 1589, + "src": "14099:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 953, + "id": 2437, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "13944:14:1", + "referencedDeclaration": 431, + "src": "14099:14:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 957, + "id": 2441, "isConstant": false, "isLValue": false, "isPure": false, @@ -14253,7 +14565,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13944:34:1", + "src": "14099:34:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -14267,21 +14579,21 @@ "typeString": "bool" } ], - "id": 951, + "id": 2435, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "13936:7:1", + "referencedDeclaration": 3705, + "src": "14091:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 958, + "id": 2442, "isConstant": false, "isLValue": false, "isPure": false, @@ -14289,15 +14601,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13936:43:1", + "src": "14091:43:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 959, + "id": 2443, "nodeType": "ExpressionStatement", - "src": "13936:43:1" + "src": "14091:43:5" } ] } @@ -14305,7 +14617,7 @@ ] }, "documentation": "@dev resolves a challenge for the provided _propID. It must be checked in advance whether the _propID has a challenge on it\n@param _propID the proposal ID whose challenge is to be resolved.", - "id": 986, + "id": 2470, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -14313,16 +14625,16 @@ "name": "resolveChallenge", "nodeType": "FunctionDefinition", "parameters": { - "id": 885, + "id": 2369, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 884, + "id": 2368, "name": "_propID", "nodeType": "VariableDeclaration", - "scope": 986, - "src": "13264:15:1", + "scope": 2470, + "src": "13378:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14330,10 +14642,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 883, + "id": 2367, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "13264:7:1", + "src": "13378:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14343,31 +14655,31 @@ "visibility": "internal" } ], - "src": "13263:17:1" + "src": "13377:17:5" }, "payable": false, "returnParameters": { - "id": 886, + "id": 2370, "nodeType": "ParameterList", "parameters": [], - "src": "13289:0:1" + "src": "13403:0:5" }, - "scope": 1003, - "src": "13238:994:1", + "scope": 2490, + "src": "13352:1076:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "private" }, { "body": { - "id": 1001, + "id": 2488, "nodeType": "Block", - "src": "14466:44:1", + "src": "14662:62:5", "statements": [ { "expression": { "argumentTypes": null, - "id": 999, + "id": 2486, "isConstant": false, "isLValue": false, "isPure": false, @@ -14376,54 +14688,106 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 993, + "id": 2477, "name": "params", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 113, - "src": "14472:6:1", + "referencedDeclaration": 1579, + "src": "14668:6:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 997, + "id": 2484, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 995, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 988, - "src": "14489:5:1", + "arguments": [ + { + "argumentTypes": null, + "id": 2481, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2472, + "src": "14702:5:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2479, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "14685:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2480, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "14685:16:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2482, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14685:23:5", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 994, + "id": 2478, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "14479:9:1", + "referencedDeclaration": 3696, + "src": "14675:9:5", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 996, + "id": 2483, "isConstant": false, "isLValue": false, "isPure": false, @@ -14431,7 +14795,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14479:16:1", + "src": "14675:34:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14442,7 +14806,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "14472:24:1", + "src": "14668:42:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14452,31 +14816,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 998, + "id": 2485, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 990, - "src": "14499:6:1", + "referencedDeclaration": 2474, + "src": "14713:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14472:33:1", + "src": "14668:51:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1000, + "id": 2487, "nodeType": "ExpressionStatement", - "src": "14472:33:1" + "src": "14668:51:5" } ] }, "documentation": "@dev sets the param keted by the provided name to the provided value\n@param _name the name of the param to be set\n@param _value the value to set the param to be set", - "id": 1002, + "id": 2489, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -14484,16 +14848,16 @@ "name": "set", "nodeType": "FunctionDefinition", "parameters": { - "id": 991, + "id": 2475, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 988, + "id": 2472, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1002, - "src": "14431:12:1", + "scope": 2489, + "src": "14627:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14501,10 +14865,10 @@ "typeString": "string" }, "typeName": { - "id": 987, + "id": 2471, "name": "string", "nodeType": "ElementaryTypeName", - "src": "14431:6:1", + "src": "14627:6:5", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -14515,11 +14879,11 @@ }, { "constant": false, - "id": 990, + "id": 2474, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 1002, - "src": "14445:11:1", + "scope": 2489, + "src": "14641:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14527,10 +14891,10 @@ "typeString": "uint256" }, "typeName": { - "id": 989, + "id": 2473, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "14445:4:1", + "src": "14641:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14540,78 +14904,78 @@ "visibility": "internal" } ], - "src": "14430:27:1" + "src": "14626:27:5" }, "payable": false, "returnParameters": { - "id": 992, + "id": 2476, "nodeType": "ParameterList", "parameters": [], - "src": "14466:0:1" + "src": "14662:0:5" }, - "scope": 1003, - "src": "14418:92:1", + "scope": 2490, + "src": "14614:110:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "private" } ], - "scope": 1004, - "src": "142:14370:1" + "scope": 2491, + "src": "101:14625:5" } ], - "src": "0:14513:1" + "src": "0:14727:5" }, "legacyAST": { - "absolutePath": "/home/rbharath/computable/contracts/Parameterizer.sol", + "absolutePath": "/home/rob/Github/computable/contracts/Parameterizer.sol", "exportedSymbols": { "Parameterizer": [ - 1003 + 2490 ] }, - "id": 1004, + "id": 2491, "nodeType": "SourceUnit", "nodes": [ { - "id": 7, + "id": 1473, "literals": [ "solidity", "0.4", ".24" ], "nodeType": "PragmaDirective", - "src": "0:23:1" + "src": "0:23:5" }, { - "absolutePath": "plcrvoting/PLCRVoting.sol", - "file": "plcrvoting/PLCRVoting.sol", - "id": 8, + "absolutePath": "/home/rob/Github/computable/contracts/PLCRVoting.sol", + "file": "./PLCRVoting.sol", + "id": 1474, "nodeType": "ImportDirective", - "scope": 1004, - "sourceUnit": 3489, - "src": "25:35:1", + "scope": 2491, + "sourceUnit": 1472, + "src": "25:26:5", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "tokens/eip20/EIP20Interface.sol", - "file": "tokens/eip20/EIP20Interface.sol", - "id": 9, + "absolutePath": "/home/rob/Github/computable/contracts/ERC20.sol", + "file": "./ERC20.sol", + "id": 1475, "nodeType": "ImportDirective", - "scope": 1004, - "sourceUnit": 3783, - "src": "61:41:1", + "scope": 2491, + "sourceUnit": 409, + "src": "52:21:5", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "zeppelin/math/SafeMath.sol", - "file": "zeppelin/math/SafeMath.sol", - "id": 10, + "absolutePath": "/home/rob/Github/computable/contracts/SafeMath.sol", + "file": "./SafeMath.sol", + "id": 1476, "nodeType": "ImportDirective", - "scope": 1004, - "sourceUnit": 3878, - "src": "103:36:1", + "scope": 2491, + "sourceUnit": 3688, + "src": "74:24:5", "symbolAliases": [], "unitAlias": "" }, @@ -14621,9 +14985,9 @@ "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 1003, + "id": 2490, "linearizedBaseContracts": [ - 1003 + 2490 ], "name": "Parameterizer", "nodeType": "ContractDefinition", @@ -14631,21 +14995,21 @@ { "anonymous": false, "documentation": null, - "id": 24, + "id": 1490, "name": "_ReparameterizationProposal", "nodeType": "EventDefinition", "parameters": { - "id": 23, + "id": 1489, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 12, + "id": 1478, "indexed": false, "name": "name", "nodeType": "VariableDeclaration", - "scope": 24, - "src": "241:11:1", + "scope": 1490, + "src": "200:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14653,10 +15017,10 @@ "typeString": "string" }, "typeName": { - "id": 11, + "id": 1477, "name": "string", "nodeType": "ElementaryTypeName", - "src": "241:6:1", + "src": "200:6:5", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -14667,12 +15031,12 @@ }, { "constant": false, - "id": 14, + "id": 1480, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 24, - "src": "254:10:1", + "scope": 1490, + "src": "213:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14680,10 +15044,10 @@ "typeString": "uint256" }, "typeName": { - "id": 13, + "id": 1479, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "254:4:1", + "src": "213:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14694,12 +15058,12 @@ }, { "constant": false, - "id": 16, + "id": 1482, "indexed": false, "name": "propID", "nodeType": "VariableDeclaration", - "scope": 24, - "src": "266:14:1", + "scope": 1490, + "src": "225:14:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14707,10 +15071,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 15, + "id": 1481, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "266:7:1", + "src": "225:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14721,12 +15085,12 @@ }, { "constant": false, - "id": 18, + "id": 1484, "indexed": false, "name": "deposit", "nodeType": "VariableDeclaration", - "scope": 24, - "src": "282:12:1", + "scope": 1490, + "src": "241:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14734,10 +15098,10 @@ "typeString": "uint256" }, "typeName": { - "id": 17, + "id": 1483, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "282:4:1", + "src": "241:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14748,12 +15112,12 @@ }, { "constant": false, - "id": 20, + "id": 1486, "indexed": false, "name": "appEndDate", "nodeType": "VariableDeclaration", - "scope": 24, - "src": "296:15:1", + "scope": 1490, + "src": "255:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14761,10 +15125,10 @@ "typeString": "uint256" }, "typeName": { - "id": 19, + "id": 1485, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "296:4:1", + "src": "255:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14775,12 +15139,12 @@ }, { "constant": false, - "id": 22, + "id": 1488, "indexed": true, "name": "proposer", "nodeType": "VariableDeclaration", - "scope": 24, - "src": "313:24:1", + "scope": 1490, + "src": "272:24:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14788,10 +15152,10 @@ "typeString": "address" }, "typeName": { - "id": 21, + "id": 1487, "name": "address", "nodeType": "ElementaryTypeName", - "src": "313:7:1", + "src": "272:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14801,28 +15165,28 @@ "visibility": "internal" } ], - "src": "240:98:1" + "src": "199:98:5" }, - "src": "207:132:1" + "src": "166:132:5" }, { "anonymous": false, "documentation": null, - "id": 36, + "id": 1502, "name": "_NewChallenge", "nodeType": "EventDefinition", "parameters": { - "id": 35, + "id": 1501, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 26, + "id": 1492, "indexed": true, "name": "propID", "nodeType": "VariableDeclaration", - "scope": 36, - "src": "362:22:1", + "scope": 1502, + "src": "321:22:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14830,10 +15194,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 25, + "id": 1491, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "362:7:1", + "src": "321:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14844,12 +15208,12 @@ }, { "constant": false, - "id": 28, + "id": 1494, "indexed": false, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 36, - "src": "386:16:1", + "scope": 1502, + "src": "345:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14857,10 +15221,10 @@ "typeString": "uint256" }, "typeName": { - "id": 27, + "id": 1493, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "386:4:1", + "src": "345:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14871,12 +15235,12 @@ }, { "constant": false, - "id": 30, + "id": 1496, "indexed": false, "name": "commitEndDate", "nodeType": "VariableDeclaration", - "scope": 36, - "src": "404:18:1", + "scope": 1502, + "src": "363:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14884,10 +15248,10 @@ "typeString": "uint256" }, "typeName": { - "id": 29, + "id": 1495, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "404:4:1", + "src": "363:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14898,12 +15262,12 @@ }, { "constant": false, - "id": 32, + "id": 1498, "indexed": false, "name": "revealEndDate", "nodeType": "VariableDeclaration", - "scope": 36, - "src": "424:18:1", + "scope": 1502, + "src": "383:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14911,10 +15275,10 @@ "typeString": "uint256" }, "typeName": { - "id": 31, + "id": 1497, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "424:4:1", + "src": "383:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14925,12 +15289,12 @@ }, { "constant": false, - "id": 34, + "id": 1500, "indexed": true, "name": "challenger", "nodeType": "VariableDeclaration", - "scope": 36, - "src": "444:26:1", + "scope": 1502, + "src": "403:26:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14938,10 +15302,10 @@ "typeString": "address" }, "typeName": { - "id": 33, + "id": 1499, "name": "address", "nodeType": "ElementaryTypeName", - "src": "444:7:1", + "src": "403:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14951,28 +15315,28 @@ "visibility": "internal" } ], - "src": "361:110:1" + "src": "320:110:5" }, - "src": "342:130:1" + "src": "301:130:5" }, { "anonymous": false, "documentation": null, - "id": 44, + "id": 1510, "name": "_ProposalAccepted", "nodeType": "EventDefinition", "parameters": { - "id": 43, + "id": 1509, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 38, + "id": 1504, "indexed": true, "name": "propID", "nodeType": "VariableDeclaration", - "scope": 44, - "src": "499:22:1", + "scope": 1510, + "src": "458:22:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14980,10 +15344,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 37, + "id": 1503, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "499:7:1", + "src": "458:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14994,12 +15358,12 @@ }, { "constant": false, - "id": 40, + "id": 1506, "indexed": false, "name": "name", "nodeType": "VariableDeclaration", - "scope": 44, - "src": "523:11:1", + "scope": 1510, + "src": "482:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15007,10 +15371,10 @@ "typeString": "string" }, "typeName": { - "id": 39, + "id": 1505, "name": "string", "nodeType": "ElementaryTypeName", - "src": "523:6:1", + "src": "482:6:5", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -15021,12 +15385,12 @@ }, { "constant": false, - "id": 42, + "id": 1508, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 44, - "src": "536:10:1", + "scope": 1510, + "src": "495:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15034,10 +15398,10 @@ "typeString": "uint256" }, "typeName": { - "id": 41, + "id": 1507, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "536:4:1", + "src": "495:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15047,28 +15411,28 @@ "visibility": "internal" } ], - "src": "498:49:1" + "src": "457:49:5" }, - "src": "475:73:1" + "src": "434:73:5" }, { "anonymous": false, "documentation": null, - "id": 48, + "id": 1514, "name": "_ProposalExpired", "nodeType": "EventDefinition", "parameters": { - "id": 47, + "id": 1513, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 46, + "id": 1512, "indexed": true, "name": "propID", "nodeType": "VariableDeclaration", - "scope": 48, - "src": "574:22:1", + "scope": 1514, + "src": "533:22:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15076,10 +15440,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 45, + "id": 1511, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "574:7:1", + "src": "533:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15089,28 +15453,28 @@ "visibility": "internal" } ], - "src": "573:24:1" + "src": "532:24:5" }, - "src": "551:47:1" + "src": "510:47:5" }, { "anonymous": false, "documentation": null, - "id": 58, + "id": 1524, "name": "_ChallengeSucceeded", "nodeType": "EventDefinition", "parameters": { - "id": 57, + "id": 1523, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 50, + "id": 1516, "indexed": true, "name": "propID", "nodeType": "VariableDeclaration", - "scope": 58, - "src": "627:22:1", + "scope": 1524, + "src": "586:22:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15118,10 +15482,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 49, + "id": 1515, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "627:7:1", + "src": "586:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15132,12 +15496,12 @@ }, { "constant": false, - "id": 52, + "id": 1518, "indexed": true, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 58, - "src": "651:24:1", + "scope": 1524, + "src": "610:24:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15145,10 +15509,10 @@ "typeString": "uint256" }, "typeName": { - "id": 51, + "id": 1517, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "651:4:1", + "src": "610:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15159,12 +15523,12 @@ }, { "constant": false, - "id": 54, + "id": 1520, "indexed": false, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 58, - "src": "677:15:1", + "scope": 1524, + "src": "636:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15172,10 +15536,10 @@ "typeString": "uint256" }, "typeName": { - "id": 53, + "id": 1519, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "677:4:1", + "src": "636:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15186,12 +15550,12 @@ }, { "constant": false, - "id": 56, + "id": 1522, "indexed": false, "name": "totalTokens", "nodeType": "VariableDeclaration", - "scope": 58, - "src": "694:16:1", + "scope": 1524, + "src": "653:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15199,10 +15563,10 @@ "typeString": "uint256" }, "typeName": { - "id": 55, + "id": 1521, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "694:4:1", + "src": "653:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15212,28 +15576,28 @@ "visibility": "internal" } ], - "src": "626:85:1" + "src": "585:85:5" }, - "src": "601:111:1" + "src": "560:111:5" }, { "anonymous": false, "documentation": null, - "id": 68, + "id": 1534, "name": "_ChallengeFailed", "nodeType": "EventDefinition", "parameters": { - "id": 67, + "id": 1533, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 60, + "id": 1526, "indexed": true, "name": "propID", "nodeType": "VariableDeclaration", - "scope": 68, - "src": "738:22:1", + "scope": 1534, + "src": "697:22:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15241,10 +15605,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 59, + "id": 1525, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "738:7:1", + "src": "697:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15255,12 +15619,12 @@ }, { "constant": false, - "id": 62, + "id": 1528, "indexed": true, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 68, - "src": "762:24:1", + "scope": 1534, + "src": "721:24:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15268,10 +15632,10 @@ "typeString": "uint256" }, "typeName": { - "id": 61, + "id": 1527, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "762:4:1", + "src": "721:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15282,12 +15646,12 @@ }, { "constant": false, - "id": 64, + "id": 1530, "indexed": false, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 68, - "src": "788:15:1", + "scope": 1534, + "src": "747:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15295,10 +15659,10 @@ "typeString": "uint256" }, "typeName": { - "id": 63, + "id": 1529, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "788:4:1", + "src": "747:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15309,12 +15673,12 @@ }, { "constant": false, - "id": 66, + "id": 1532, "indexed": false, "name": "totalTokens", "nodeType": "VariableDeclaration", - "scope": 68, - "src": "805:16:1", + "scope": 1534, + "src": "764:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15322,10 +15686,10 @@ "typeString": "uint256" }, "typeName": { - "id": 65, + "id": 1531, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "805:4:1", + "src": "764:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15335,28 +15699,28 @@ "visibility": "internal" } ], - "src": "737:85:1" + "src": "696:85:5" }, - "src": "715:108:1" + "src": "674:108:5" }, { "anonymous": false, "documentation": null, - "id": 76, + "id": 1542, "name": "_RewardClaimed", "nodeType": "EventDefinition", "parameters": { - "id": 75, + "id": 1541, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 70, + "id": 1536, "indexed": true, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 76, - "src": "847:24:1", + "scope": 1542, + "src": "806:24:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15364,10 +15728,10 @@ "typeString": "uint256" }, "typeName": { - "id": 69, + "id": 1535, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "847:4:1", + "src": "806:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15378,12 +15742,12 @@ }, { "constant": false, - "id": 72, + "id": 1538, "indexed": false, "name": "reward", "nodeType": "VariableDeclaration", - "scope": 76, - "src": "873:11:1", + "scope": 1542, + "src": "832:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15391,10 +15755,10 @@ "typeString": "uint256" }, "typeName": { - "id": 71, + "id": 1537, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "873:4:1", + "src": "832:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15405,12 +15769,12 @@ }, { "constant": false, - "id": 74, + "id": 1540, "indexed": true, "name": "voter", "nodeType": "VariableDeclaration", - "scope": 76, - "src": "886:21:1", + "scope": 1542, + "src": "845:21:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15418,10 +15782,10 @@ "typeString": "address" }, "typeName": { - "id": 73, + "id": 1539, "name": "address", "nodeType": "ElementaryTypeName", - "src": "886:7:1", + "src": "845:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15431,31 +15795,31 @@ "visibility": "internal" } ], - "src": "846:62:1" + "src": "805:62:5" }, - "src": "826:83:1" + "src": "785:83:5" }, { - "id": 79, + "id": 1545, "libraryName": { "contractScope": null, - "id": 77, + "id": 1543, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3877, - "src": "966:8:1", + "referencedDeclaration": 3687, + "src": "925:8:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$3877", + "typeIdentifier": "t_contract$_SafeMath_$3687", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", - "src": "960:24:1", + "src": "919:24:5", "typeName": { - "id": 78, + "id": 1544, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "979:4:1", + "src": "938:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15464,15 +15828,15 @@ }, { "canonicalName": "Parameterizer.ParamProposal", - "id": 94, + "id": 1560, "members": [ { "constant": false, - "id": 81, + "id": 1547, "name": "appExpiry", "nodeType": "VariableDeclaration", - "scope": 94, - "src": "1015:14:1", + "scope": 1560, + "src": "974:14:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15480,10 +15844,10 @@ "typeString": "uint256" }, "typeName": { - "id": 80, + "id": 1546, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1015:4:1", + "src": "974:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15494,11 +15858,11 @@ }, { "constant": false, - "id": 83, + "id": 1549, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 94, - "src": "1035:16:1", + "scope": 1560, + "src": "994:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15506,10 +15870,10 @@ "typeString": "uint256" }, "typeName": { - "id": 82, + "id": 1548, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1035:4:1", + "src": "994:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15520,11 +15884,11 @@ }, { "constant": false, - "id": 85, + "id": 1551, "name": "deposit", "nodeType": "VariableDeclaration", - "scope": 94, - "src": "1057:12:1", + "scope": 1560, + "src": "1016:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15532,10 +15896,10 @@ "typeString": "uint256" }, "typeName": { - "id": 84, + "id": 1550, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1057:4:1", + "src": "1016:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15546,11 +15910,11 @@ }, { "constant": false, - "id": 87, + "id": 1553, "name": "name", "nodeType": "VariableDeclaration", - "scope": 94, - "src": "1075:11:1", + "scope": 1560, + "src": "1034:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15558,10 +15922,10 @@ "typeString": "string" }, "typeName": { - "id": 86, + "id": 1552, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1075:6:1", + "src": "1034:6:5", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -15572,11 +15936,11 @@ }, { "constant": false, - "id": 89, + "id": 1555, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 94, - "src": "1092:13:1", + "scope": 1560, + "src": "1051:13:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15584,10 +15948,10 @@ "typeString": "address" }, "typeName": { - "id": 88, + "id": 1554, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1092:7:1", + "src": "1051:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15598,11 +15962,11 @@ }, { "constant": false, - "id": 91, + "id": 1557, "name": "processBy", "nodeType": "VariableDeclaration", - "scope": 94, - "src": "1111:14:1", + "scope": 1560, + "src": "1070:14:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15610,10 +15974,10 @@ "typeString": "uint256" }, "typeName": { - "id": 90, + "id": 1556, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1111:4:1", + "src": "1070:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15624,11 +15988,11 @@ }, { "constant": false, - "id": 93, + "id": 1559, "name": "value", "nodeType": "VariableDeclaration", - "scope": 94, - "src": "1131:10:1", + "scope": 1560, + "src": "1090:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15636,10 +16000,10 @@ "typeString": "uint256" }, "typeName": { - "id": 92, + "id": 1558, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1131:4:1", + "src": "1090:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15651,21 +16015,21 @@ ], "name": "ParamProposal", "nodeType": "StructDefinition", - "scope": 1003, - "src": "988:158:1", + "scope": 2490, + "src": "947:158:5", "visibility": "public" }, { "canonicalName": "Parameterizer.Challenge", - "id": 109, + "id": 1575, "members": [ { "constant": false, - "id": 96, + "id": 1562, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 109, - "src": "1173:15:1", + "scope": 1575, + "src": "1132:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15673,10 +16037,10 @@ "typeString": "uint256" }, "typeName": { - "id": 95, + "id": 1561, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1173:4:1", + "src": "1132:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15687,11 +16051,11 @@ }, { "constant": false, - "id": 98, + "id": 1564, "name": "challenger", "nodeType": "VariableDeclaration", - "scope": 109, - "src": "1266:18:1", + "scope": 1575, + "src": "1225:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15699,10 +16063,10 @@ "typeString": "address" }, "typeName": { - "id": 97, + "id": 1563, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1266:7:1", + "src": "1225:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15713,11 +16077,11 @@ }, { "constant": false, - "id": 100, + "id": 1566, "name": "resolved", "nodeType": "VariableDeclaration", - "scope": 109, - "src": "1316:13:1", + "scope": 1575, + "src": "1275:13:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15725,10 +16089,10 @@ "typeString": "bool" }, "typeName": { - "id": 99, + "id": 1565, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1316:4:1", + "src": "1275:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15739,11 +16103,11 @@ }, { "constant": false, - "id": 102, + "id": 1568, "name": "stake", "nodeType": "VariableDeclaration", - "scope": 109, - "src": "1386:10:1", + "scope": 1575, + "src": "1345:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15751,10 +16115,10 @@ "typeString": "uint256" }, "typeName": { - "id": 101, + "id": 1567, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1386:4:1", + "src": "1345:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15765,11 +16129,11 @@ }, { "constant": false, - "id": 104, + "id": 1570, "name": "winningTokens", "nodeType": "VariableDeclaration", - "scope": 109, - "src": "1476:18:1", + "scope": 1575, + "src": "1435:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15777,10 +16141,10 @@ "typeString": "uint256" }, "typeName": { - "id": 103, + "id": 1569, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1476:4:1", + "src": "1435:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15791,11 +16155,11 @@ }, { "constant": false, - "id": 108, + "id": 1574, "name": "tokenClaims", "nodeType": "VariableDeclaration", - "scope": 109, - "src": "1572:36:1", + "scope": 1575, + "src": "1531:36:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15803,28 +16167,28 @@ "typeString": "mapping(address => bool)" }, "typeName": { - "id": 107, + "id": 1573, "keyType": { - "id": 105, + "id": 1571, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1580:7:1", + "src": "1539:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1572:24:1", + "src": "1531:24:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" }, "valueType": { - "id": 106, + "id": 1572, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1591:4:1", + "src": "1550:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15837,17 +16201,17 @@ ], "name": "Challenge", "nodeType": "StructDefinition", - "scope": 1003, - "src": "1150:463:1", + "scope": 2490, + "src": "1109:463:5", "visibility": "public" }, { "constant": false, - "id": 113, + "id": 1579, "name": "params", "nodeType": "VariableDeclaration", - "scope": 1003, - "src": "1653:38:1", + "scope": 2490, + "src": "1612:38:5", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -15855,28 +16219,28 @@ "typeString": "mapping(bytes32 => uint256)" }, "typeName": { - "id": 112, + "id": 1578, "keyType": { - "id": 110, + "id": 1576, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1661:7:1", + "src": "1620:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "1653:24:1", + "src": "1612:24:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" }, "valueType": { - "id": 111, + "id": 1577, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1672:4:1", + "src": "1631:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15888,44 +16252,44 @@ }, { "constant": false, - "id": 117, + "id": 1583, "name": "challenges", "nodeType": "VariableDeclaration", - "scope": 1003, - "src": "1748:44:1", + "scope": 2490, + "src": "1707:44:5", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge)" }, "typeName": { - "id": 116, + "id": 1582, "keyType": { - "id": 114, + "id": 1580, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1756:4:1", + "src": "1715:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Mapping", - "src": "1748:26:1", + "src": "1707:26:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge)" }, "valueType": { "contractScope": null, - "id": 115, + "id": 1581, "name": "Challenge", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 109, - "src": "1764:9:1", + "referencedDeclaration": 1575, + "src": "1723:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge" } } @@ -15935,44 +16299,44 @@ }, { "constant": false, - "id": 121, + "id": 1587, "name": "proposals", "nodeType": "VariableDeclaration", - "scope": 1003, - "src": "1854:50:1", + "scope": 2490, + "src": "1813:50:5", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal)" }, "typeName": { - "id": 120, + "id": 1586, "keyType": { - "id": 118, + "id": 1584, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1862:7:1", + "src": "1821:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "1854:33:1", + "src": "1813:33:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal)" }, "valueType": { "contractScope": null, - "id": 119, + "id": 1585, "name": "ParamProposal", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 94, - "src": "1873:13:1", + "referencedDeclaration": 1560, + "src": "1832:13:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal" } } @@ -15982,27 +16346,27 @@ }, { "constant": false, - "id": 123, + "id": 1589, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1003, - "src": "1931:27:1", + "scope": 2490, + "src": "1890:18:5", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" }, "typeName": { "contractScope": null, - "id": 122, - "name": "EIP20Interface", + "id": 1588, + "name": "ERC20", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3782, - "src": "1931:14:1", + "referencedDeclaration": 408, + "src": "1890:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, "value": null, @@ -16010,26 +16374,26 @@ }, { "constant": false, - "id": 125, + "id": 1591, "name": "voting", "nodeType": "VariableDeclaration", - "scope": 1003, - "src": "1962:24:1", + "scope": 2490, + "src": "1912:24:5", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" }, "typeName": { "contractScope": null, - "id": 124, + "id": 1590, "name": "PLCRVoting", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3488, - "src": "1962:10:1", + "referencedDeclaration": 1471, + "src": "1912:10:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, @@ -16038,11 +16402,11 @@ }, { "constant": false, - "id": 128, + "id": 1594, "name": "PROCESSBY", "nodeType": "VariableDeclaration", - "scope": 1003, - "src": "1990:30:1", + "scope": 2490, + "src": "1940:30:5", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -16050,10 +16414,10 @@ "typeString": "uint256" }, "typeName": { - "id": 126, + "id": 1592, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1990:4:1", + "src": "1940:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16062,14 +16426,14 @@ "value": { "argumentTypes": null, "hexValue": "363034383030", - "id": 127, + "id": 1593, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "2014:6:1", + "src": "1964:6:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_604800_by_1", @@ -16081,29 +16445,29 @@ }, { "body": { - "id": 231, + "id": 1697, "nodeType": "Block", - "src": "3653:590:1", + "src": "3592:581:5", "statements": [ { "expression": { "argumentTypes": null, - "id": 163, + "id": 1629, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 159, + "id": 1625, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "3659:5:1", + "referencedDeclaration": 1589, + "src": "3598:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, "nodeType": "Assignment", @@ -16113,12 +16477,12 @@ "arguments": [ { "argumentTypes": null, - "id": 161, + "id": 1627, "name": "_tokenAddr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 130, - "src": "3682:10:1", + "referencedDeclaration": 1596, + "src": "3612:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16132,18 +16496,18 @@ "typeString": "address" } ], - "id": 160, - "name": "EIP20Interface", + "id": 1626, + "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3782, - "src": "3667:14:1", + "referencedDeclaration": 408, + "src": "3606:5:5", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_EIP20Interface_$3782_$", - "typeString": "type(contract EIP20Interface)" + "typeIdentifier": "t_type$_t_contract$_ERC20_$408_$", + "typeString": "type(contract ERC20)" } }, - "id": 162, + "id": 1628, "isConstant": false, "isLValue": false, "isPure": false, @@ -16151,40 +16515,40 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3667:26:1", + "src": "3606:17:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "src": "3659:34:1", + "src": "3598:25:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 164, + "id": 1630, "nodeType": "ExpressionStatement", - "src": "3659:34:1" + "src": "3598:25:5" }, { "expression": { "argumentTypes": null, - "id": 169, + "id": 1635, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 165, + "id": 1631, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "3699:6:1", + "referencedDeclaration": 1591, + "src": "3629:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, @@ -16195,12 +16559,12 @@ "arguments": [ { "argumentTypes": null, - "id": 167, + "id": 1633, "name": "_plcrAddr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 132, - "src": "3719:9:1", + "referencedDeclaration": 1598, + "src": "3649:9:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16214,18 +16578,18 @@ "typeString": "address" } ], - "id": 166, + "id": 1632, "name": "PLCRVoting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3488, - "src": "3708:10:1", + "referencedDeclaration": 1471, + "src": "3638:10:5", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_PLCRVoting_$3488_$", + "typeIdentifier": "t_type$_t_contract$_PLCRVoting_$1471_$", "typeString": "type(contract PLCRVoting)" } }, - "id": 168, + "id": 1634, "isConstant": false, "isLValue": false, "isPure": false, @@ -16233,21 +16597,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3708:21:1", + "src": "3638:21:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "src": "3699:30:1", + "src": "3629:30:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 170, + "id": 1636, "nodeType": "ExpressionStatement", - "src": "3699:30:1" + "src": "3629:30:5" }, { "expression": { @@ -16256,14 +16620,14 @@ { "argumentTypes": null, "hexValue": "6d696e4465706f736974", - "id": 172, + "id": 1638, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3740:12:1", + "src": "3670:12:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_1562a3cff09047061ba41141a6bb560ed15f1ca2968c821562d091212629199d", @@ -16273,12 +16637,12 @@ }, { "argumentTypes": null, - "id": 173, + "id": 1639, "name": "_minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 134, - "src": "3754:11:1", + "referencedDeclaration": 1600, + "src": "3684:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16296,18 +16660,18 @@ "typeString": "uint256" } ], - "id": 171, + "id": 1637, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "3736:3:1", + "referencedDeclaration": 2489, + "src": "3666:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 174, + "id": 1640, "isConstant": false, "isLValue": false, "isPure": false, @@ -16315,15 +16679,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3736:30:1", + "src": "3666:30:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 175, + "id": 1641, "nodeType": "ExpressionStatement", - "src": "3736:30:1" + "src": "3666:30:5" }, { "expression": { @@ -16332,14 +16696,14 @@ { "argumentTypes": null, "hexValue": "704d696e4465706f736974", - "id": 177, + "id": 1643, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3776:13:1", + "src": "3706:13:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_79b35b6e30f7c782e133dcfa06a825d420ec880f4036bf04dd005fe368978200", @@ -16349,12 +16713,12 @@ }, { "argumentTypes": null, - "id": 178, + "id": 1644, "name": "_pMinDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 136, - "src": "3791:12:1", + "referencedDeclaration": 1602, + "src": "3721:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16372,18 +16736,18 @@ "typeString": "uint256" } ], - "id": 176, + "id": 1642, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "3772:3:1", + "referencedDeclaration": 2489, + "src": "3702:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 179, + "id": 1645, "isConstant": false, "isLValue": false, "isPure": false, @@ -16391,15 +16755,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3772:32:1", + "src": "3702:32:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 180, + "id": 1646, "nodeType": "ExpressionStatement", - "src": "3772:32:1" + "src": "3702:32:5" }, { "expression": { @@ -16408,14 +16772,14 @@ { "argumentTypes": null, "hexValue": "6170706c7953746167654c656e", - "id": 182, + "id": 1648, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3814:15:1", + "src": "3744:15:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_e8c03b11eba3b2d069479ae0d3837927171e72e193c0acb726bbd53bdd5902da", @@ -16425,12 +16789,12 @@ }, { "argumentTypes": null, - "id": 183, + "id": 1649, "name": "_applyStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 138, - "src": "3831:14:1", + "referencedDeclaration": 1604, + "src": "3761:14:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16448,18 +16812,18 @@ "typeString": "uint256" } ], - "id": 181, + "id": 1647, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "3810:3:1", + "referencedDeclaration": 2489, + "src": "3740:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 184, + "id": 1650, "isConstant": false, "isLValue": false, "isPure": false, @@ -16467,15 +16831,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3810:36:1", + "src": "3740:36:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 185, + "id": 1651, "nodeType": "ExpressionStatement", - "src": "3810:36:1" + "src": "3740:36:5" }, { "expression": { @@ -16484,14 +16848,14 @@ { "argumentTypes": null, "hexValue": "704170706c7953746167654c656e", - "id": 187, + "id": 1653, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3856:16:1", + "src": "3786:16:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_5b5170ca3f1920aed95b983e4a145c32a025f4a29a71df82746241afd472a9d8", @@ -16501,12 +16865,12 @@ }, { "argumentTypes": null, - "id": 188, + "id": 1654, "name": "_pApplyStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 140, - "src": "3874:15:1", + "referencedDeclaration": 1606, + "src": "3804:15:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16524,18 +16888,18 @@ "typeString": "uint256" } ], - "id": 186, + "id": 1652, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "3852:3:1", + "referencedDeclaration": 2489, + "src": "3782:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 189, + "id": 1655, "isConstant": false, "isLValue": false, "isPure": false, @@ -16543,15 +16907,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3852:38:1", + "src": "3782:38:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 190, + "id": 1656, "nodeType": "ExpressionStatement", - "src": "3852:38:1" + "src": "3782:38:5" }, { "expression": { @@ -16560,14 +16924,14 @@ { "argumentTypes": null, "hexValue": "636f6d6d697453746167654c656e", - "id": 192, + "id": 1658, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3900:16:1", + "src": "3830:16:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_22aa10f6207ed6245b2e23bddfcdfa1a542b375f7cf45082a1a75b9304a6150d", @@ -16577,12 +16941,12 @@ }, { "argumentTypes": null, - "id": 193, + "id": 1659, "name": "_commitStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 142, - "src": "3918:15:1", + "referencedDeclaration": 1608, + "src": "3848:15:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16600,18 +16964,18 @@ "typeString": "uint256" } ], - "id": 191, + "id": 1657, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "3896:3:1", + "referencedDeclaration": 2489, + "src": "3826:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 194, + "id": 1660, "isConstant": false, "isLValue": false, "isPure": false, @@ -16619,15 +16983,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3896:38:1", + "src": "3826:38:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 195, + "id": 1661, "nodeType": "ExpressionStatement", - "src": "3896:38:1" + "src": "3826:38:5" }, { "expression": { @@ -16636,14 +17000,14 @@ { "argumentTypes": null, "hexValue": "70436f6d6d697453746167654c656e", - "id": 197, + "id": 1663, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3944:17:1", + "src": "3874:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_8ba0bfd13d315213bdff16c58a613af32380ba99f9d780656d5dec1267165fb1", @@ -16653,12 +17017,12 @@ }, { "argumentTypes": null, - "id": 198, + "id": 1664, "name": "_pCommitStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 144, - "src": "3963:16:1", + "referencedDeclaration": 1610, + "src": "3893:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16676,18 +17040,18 @@ "typeString": "uint256" } ], - "id": 196, + "id": 1662, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "3940:3:1", + "referencedDeclaration": 2489, + "src": "3870:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 199, + "id": 1665, "isConstant": false, "isLValue": false, "isPure": false, @@ -16695,15 +17059,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3940:40:1", + "src": "3870:40:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 200, + "id": 1666, "nodeType": "ExpressionStatement", - "src": "3940:40:1" + "src": "3870:40:5" }, { "expression": { @@ -16712,14 +17076,14 @@ { "argumentTypes": null, "hexValue": "72657665616c53746167654c656e", - "id": 202, + "id": 1668, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3990:16:1", + "src": "3920:16:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_e8858300ed02b4242350c6412c69b3951ae8f1d10eb49beafb9ecebaba7a0af1", @@ -16729,12 +17093,12 @@ }, { "argumentTypes": null, - "id": 203, + "id": 1669, "name": "_revealStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 146, - "src": "4008:15:1", + "referencedDeclaration": 1612, + "src": "3938:15:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16752,18 +17116,18 @@ "typeString": "uint256" } ], - "id": 201, + "id": 1667, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "3986:3:1", + "referencedDeclaration": 2489, + "src": "3916:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 204, + "id": 1670, "isConstant": false, "isLValue": false, "isPure": false, @@ -16771,15 +17135,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3986:38:1", + "src": "3916:38:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 205, + "id": 1671, "nodeType": "ExpressionStatement", - "src": "3986:38:1" + "src": "3916:38:5" }, { "expression": { @@ -16788,14 +17152,14 @@ { "argumentTypes": null, "hexValue": "7052657665616c53746167654c656e", - "id": 207, + "id": 1673, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4034:17:1", + "src": "3964:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_fb97b9af270fc6f948089d10e64865cacad847ebc2ed8f2c10065db2f3593fa5", @@ -16805,12 +17169,12 @@ }, { "argumentTypes": null, - "id": 208, + "id": 1674, "name": "_pRevealStageLen", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 148, - "src": "4053:16:1", + "referencedDeclaration": 1614, + "src": "3983:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16828,18 +17192,18 @@ "typeString": "uint256" } ], - "id": 206, + "id": 1672, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "4030:3:1", + "referencedDeclaration": 2489, + "src": "3960:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 209, + "id": 1675, "isConstant": false, "isLValue": false, "isPure": false, @@ -16847,15 +17211,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4030:40:1", + "src": "3960:40:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 210, + "id": 1676, "nodeType": "ExpressionStatement", - "src": "4030:40:1" + "src": "3960:40:5" }, { "expression": { @@ -16864,14 +17228,14 @@ { "argumentTypes": null, "hexValue": "64697370656e736174696f6e506374", - "id": 212, + "id": 1678, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4080:17:1", + "src": "4010:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_a44475ce52a893bc7cadba79a6351960ca7e12219e3b7f3a04da4d29c39864e4", @@ -16881,12 +17245,12 @@ }, { "argumentTypes": null, - "id": 213, + "id": 1679, "name": "_dispensationPct", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 150, - "src": "4099:16:1", + "referencedDeclaration": 1616, + "src": "4029:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16904,18 +17268,18 @@ "typeString": "uint256" } ], - "id": 211, + "id": 1677, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "4076:3:1", + "referencedDeclaration": 2489, + "src": "4006:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 214, + "id": 1680, "isConstant": false, "isLValue": false, "isPure": false, @@ -16923,15 +17287,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4076:40:1", + "src": "4006:40:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 215, + "id": 1681, "nodeType": "ExpressionStatement", - "src": "4076:40:1" + "src": "4006:40:5" }, { "expression": { @@ -16940,14 +17304,14 @@ { "argumentTypes": null, "hexValue": "7044697370656e736174696f6e506374", - "id": 217, + "id": 1683, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4126:18:1", + "src": "4056:18:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_05a3daf44f91da292c219c05dc954c342940b8aa851b594c6aaec71e37d44b79", @@ -16957,12 +17321,12 @@ }, { "argumentTypes": null, - "id": 218, + "id": 1684, "name": "_pDispensationPct", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 152, - "src": "4146:17:1", + "referencedDeclaration": 1618, + "src": "4076:17:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16980,18 +17344,18 @@ "typeString": "uint256" } ], - "id": 216, + "id": 1682, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "4122:3:1", + "referencedDeclaration": 2489, + "src": "4052:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 219, + "id": 1685, "isConstant": false, "isLValue": false, "isPure": false, @@ -16999,15 +17363,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4122:42:1", + "src": "4052:42:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 220, + "id": 1686, "nodeType": "ExpressionStatement", - "src": "4122:42:1" + "src": "4052:42:5" }, { "expression": { @@ -17016,14 +17380,14 @@ { "argumentTypes": null, "hexValue": "766f746551756f72756d", - "id": 222, + "id": 1688, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4174:12:1", + "src": "4104:12:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_9b01c2212638b995654bf3d584befbb3576184e03cd1a9ae5693a18a1f559878", @@ -17033,12 +17397,12 @@ }, { "argumentTypes": null, - "id": 223, + "id": 1689, "name": "_voteQuorum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 154, - "src": "4188:11:1", + "referencedDeclaration": 1620, + "src": "4118:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17056,18 +17420,18 @@ "typeString": "uint256" } ], - "id": 221, + "id": 1687, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "4170:3:1", + "referencedDeclaration": 2489, + "src": "4100:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 224, + "id": 1690, "isConstant": false, "isLValue": false, "isPure": false, @@ -17075,15 +17439,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4170:30:1", + "src": "4100:30:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 225, + "id": 1691, "nodeType": "ExpressionStatement", - "src": "4170:30:1" + "src": "4100:30:5" }, { "expression": { @@ -17092,14 +17456,14 @@ { "argumentTypes": null, "hexValue": "70566f746551756f72756d", - "id": 227, + "id": 1693, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4210:13:1", + "src": "4140:13:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_1cd8ca3a1baaf24ca4431f7b59b78854d08ce96815f9b5677de2c92385fb9138", @@ -17109,12 +17473,12 @@ }, { "argumentTypes": null, - "id": 228, + "id": 1694, "name": "_pVoteQuorum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "4225:12:1", + "referencedDeclaration": 1622, + "src": "4155:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17132,18 +17496,18 @@ "typeString": "uint256" } ], - "id": 226, + "id": 1692, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "4206:3:1", + "referencedDeclaration": 2489, + "src": "4136:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 229, + "id": 1695, "isConstant": false, "isLValue": false, "isPure": false, @@ -17151,37 +17515,37 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4206:32:1", + "src": "4136:32:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 230, + "id": 1696, "nodeType": "ExpressionStatement", - "src": "4206:32:1" + "src": "4136:32:5" } ] }, "documentation": "@dev constructor\n@param _tokenAddr address of the token which parameterizes this system\n@param _plcrAddr address of a PLCR voting contract for the provided token\n@param _minDeposit minimum deposit for listing to be whitelisted\n@param _pMinDeposit minimum deposit to propose a reparameterization\n@param _applyStageLen period over which applicants wait to be whitelisted\n@param _pApplyStageLen period over which reparmeterization proposals wait to be processed\n@param _dispensationPct percentage of losing party's deposit distributed to winning party\n@param _pDispensationPct percentage of losing party's deposit distributed to winning party in parameterizer\n@param _commitStageLen length of commit period for voting\n@param _pCommitStageLen length of commit period for voting in parameterizer\n@param _revealStageLen length of reveal period for voting\n@param _pRevealStageLen length of reveal period for voting in parameterizer\n@param _voteQuorum type of majority out of 100 necessary for vote success\n@param _pVoteQuorum type of majority out of 100 necessary for vote success in parameterizer", - "id": 232, + "id": 1698, "implemented": true, "isConstructor": true, "isDeclaredConst": false, "modifiers": [], - "name": "Parameterizer", + "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 157, + "id": 1623, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 130, + "id": 1596, "name": "_tokenAddr", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3294:18:1", + "scope": 1698, + "src": "3233:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17189,10 +17553,10 @@ "typeString": "address" }, "typeName": { - "id": 129, + "id": 1595, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3294:7:1", + "src": "3233:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17203,11 +17567,11 @@ }, { "constant": false, - "id": 132, + "id": 1598, "name": "_plcrAddr", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3318:17:1", + "scope": 1698, + "src": "3257:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17215,10 +17579,10 @@ "typeString": "address" }, "typeName": { - "id": 131, + "id": 1597, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3318:7:1", + "src": "3257:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17229,11 +17593,11 @@ }, { "constant": false, - "id": 134, + "id": 1600, "name": "_minDeposit", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3341:16:1", + "scope": 1698, + "src": "3280:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17241,10 +17605,10 @@ "typeString": "uint256" }, "typeName": { - "id": 133, + "id": 1599, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3341:4:1", + "src": "3280:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17255,11 +17619,11 @@ }, { "constant": false, - "id": 136, + "id": 1602, "name": "_pMinDeposit", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3363:17:1", + "scope": 1698, + "src": "3302:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17267,10 +17631,10 @@ "typeString": "uint256" }, "typeName": { - "id": 135, + "id": 1601, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3363:4:1", + "src": "3302:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17281,11 +17645,11 @@ }, { "constant": false, - "id": 138, + "id": 1604, "name": "_applyStageLen", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3386:19:1", + "scope": 1698, + "src": "3325:19:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17293,10 +17657,10 @@ "typeString": "uint256" }, "typeName": { - "id": 137, + "id": 1603, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3386:4:1", + "src": "3325:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17307,11 +17671,11 @@ }, { "constant": false, - "id": 140, + "id": 1606, "name": "_pApplyStageLen", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3411:20:1", + "scope": 1698, + "src": "3350:20:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17319,10 +17683,10 @@ "typeString": "uint256" }, "typeName": { - "id": 139, + "id": 1605, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3411:4:1", + "src": "3350:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17333,11 +17697,11 @@ }, { "constant": false, - "id": 142, + "id": 1608, "name": "_commitStageLen", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3437:20:1", + "scope": 1698, + "src": "3376:20:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17345,10 +17709,10 @@ "typeString": "uint256" }, "typeName": { - "id": 141, + "id": 1607, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3437:4:1", + "src": "3376:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17359,11 +17723,11 @@ }, { "constant": false, - "id": 144, + "id": 1610, "name": "_pCommitStageLen", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3463:21:1", + "scope": 1698, + "src": "3402:21:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17371,10 +17735,10 @@ "typeString": "uint256" }, "typeName": { - "id": 143, + "id": 1609, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3463:4:1", + "src": "3402:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17385,11 +17749,11 @@ }, { "constant": false, - "id": 146, + "id": 1612, "name": "_revealStageLen", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3490:20:1", + "scope": 1698, + "src": "3429:20:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17397,10 +17761,10 @@ "typeString": "uint256" }, "typeName": { - "id": 145, + "id": 1611, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3490:4:1", + "src": "3429:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17411,11 +17775,11 @@ }, { "constant": false, - "id": 148, + "id": 1614, "name": "_pRevealStageLen", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3516:21:1", + "scope": 1698, + "src": "3455:21:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17423,10 +17787,10 @@ "typeString": "uint256" }, "typeName": { - "id": 147, + "id": 1613, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3516:4:1", + "src": "3455:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17437,11 +17801,11 @@ }, { "constant": false, - "id": 150, + "id": 1616, "name": "_dispensationPct", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3543:21:1", + "scope": 1698, + "src": "3482:21:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17449,10 +17813,10 @@ "typeString": "uint256" }, "typeName": { - "id": 149, + "id": 1615, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3543:4:1", + "src": "3482:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17463,11 +17827,11 @@ }, { "constant": false, - "id": 152, + "id": 1618, "name": "_pDispensationPct", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3570:22:1", + "scope": 1698, + "src": "3509:22:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17475,10 +17839,10 @@ "typeString": "uint256" }, "typeName": { - "id": 151, + "id": 1617, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3570:4:1", + "src": "3509:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17489,11 +17853,11 @@ }, { "constant": false, - "id": 154, + "id": 1620, "name": "_voteQuorum", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3598:16:1", + "scope": 1698, + "src": "3537:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17501,10 +17865,10 @@ "typeString": "uint256" }, "typeName": { - "id": 153, + "id": 1619, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3598:4:1", + "src": "3537:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17515,11 +17879,11 @@ }, { "constant": false, - "id": 156, + "id": 1622, "name": "_pVoteQuorum", "nodeType": "VariableDeclaration", - "scope": 232, - "src": "3620:17:1", + "scope": 1698, + "src": "3559:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17527,10 +17891,10 @@ "typeString": "uint256" }, "typeName": { - "id": 155, + "id": 1621, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3620:4:1", + "src": "3559:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17540,39 +17904,39 @@ "visibility": "internal" } ], - "src": "3288:355:1" + "src": "3227:355:5" }, "payable": false, "returnParameters": { - "id": 158, + "id": 1624, "nodeType": "ParameterList", "parameters": [], - "src": "3653:0:1" + "src": "3592:0:5" }, - "scope": 1003, - "src": "3266:977:1", + "scope": 2490, + "src": "3216:957:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 355, + "id": 1836, "nodeType": "Block", - "src": "4625:1000:1", + "src": "4555:1133:5", "statements": [ { "assignments": [ - 242 + 1708 ], "declarations": [ { "constant": false, - "id": 242, + "id": 1708, "name": "deposit", "nodeType": "VariableDeclaration", - "scope": 356, - "src": "4631:12:1", + "scope": 1837, + "src": "4561:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17580,10 +17944,10 @@ "typeString": "uint256" }, "typeName": { - "id": 241, + "id": 1707, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4631:4:1", + "src": "4561:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17593,21 +17957,21 @@ "visibility": "internal" } ], - "id": 246, + "id": 1712, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "hexValue": "704d696e4465706f736974", - "id": 244, + "id": 1710, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4650:13:1", + "src": "4580:13:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_79b35b6e30f7c782e133dcfa06a825d420ec880f4036bf04dd005fe368978200", @@ -17623,18 +17987,18 @@ "typeString": "literal_string \"pMinDeposit\"" } ], - "id": 243, + "id": 1709, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "4646:3:1", + "referencedDeclaration": 2349, + "src": "4576:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 245, + "id": 1711, "isConstant": false, "isLValue": false, "isPure": false, @@ -17642,27 +18006,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4646:18:1", + "src": "4576:18:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "4631:33:1" + "src": "4561:33:5" }, { "assignments": [ - 248 + 1714 ], "declarations": [ { "constant": false, - "id": 248, + "id": 1714, "name": "propID", "nodeType": "VariableDeclaration", - "scope": 356, - "src": "4670:14:1", + "scope": 1837, + "src": "4600:14:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17670,10 +18034,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 247, + "id": 1713, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4670:7:1", + "src": "4600:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -17683,60 +18047,112 @@ "visibility": "internal" } ], - "id": 253, + "id": 1722, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 250, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 234, - "src": "4697:5:1", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - { - "argumentTypes": null, - "id": 251, - "name": "_value", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 236, - "src": "4704:6:1", + "arguments": [ + { + "argumentTypes": null, + "id": 1718, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1700, + "src": "4644:5:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + { + "argumentTypes": null, + "id": 1719, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1702, + "src": "4651:6:5", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 1716, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "4627:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1717, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4627:16:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1720, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4627:31:5", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - }, - { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 249, + "id": 1715, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "4687:9:1", + "referencedDeclaration": 3696, + "src": "4617:9:5", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 252, + "id": 1721, "isConstant": false, "isLValue": false, "isPure": false, @@ -17744,14 +18160,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4687:24:1", + "src": "4617:42:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "VariableDeclarationStatement", - "src": "4670:41:1" + "src": "4600:59:5" }, { "condition": { @@ -17760,7 +18176,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 268, + "id": 1749, "isConstant": false, "isLValue": false, "isPure": false, @@ -17771,7 +18187,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 260, + "id": 1735, "isConstant": false, "isLValue": false, "isPure": false, @@ -17781,37 +18197,89 @@ "arguments": [ { "argumentTypes": null, - "id": 255, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 234, - "src": "4732:5:1", + "arguments": [ + { + "argumentTypes": null, + "id": 1726, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1700, + "src": "4697:5:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1724, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "4680:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1725, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4680:16:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1727, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4680:23:5", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 254, + "id": 1723, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "4722:9:1", + "referencedDeclaration": 3696, + "src": "4670:9:5", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 256, + "id": 1728, "isConstant": false, "isLValue": false, "isPure": false, @@ -17819,7 +18287,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4722:16:1", + "src": "4670:34:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -17832,42 +18300,94 @@ "arguments": [ { "argumentTypes": null, - "hexValue": "64697370656e736174696f6e506374", - "id": 258, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "64697370656e736174696f6e506374", + "id": 1732, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4735:17:5", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a44475ce52a893bc7cadba79a6351960ca7e12219e3b7f3a04da4d29c39864e4", + "typeString": "literal_string \"dispensationPct\"" + }, + "value": "dispensationPct" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_a44475ce52a893bc7cadba79a6351960ca7e12219e3b7f3a04da4d29c39864e4", + "typeString": "literal_string \"dispensationPct\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 1730, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "4718:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1731, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4718:16:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1733, "isConstant": false, "isLValue": false, "isPure": true, - "kind": "string", + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "4752:17:1", - "subdenomination": null, + "names": [], + "nodeType": "FunctionCall", + "src": "4718:35:5", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_a44475ce52a893bc7cadba79a6351960ca7e12219e3b7f3a04da4d29c39864e4", - "typeString": "literal_string \"dispensationPct\"" - }, - "value": "dispensationPct" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_stringliteral_a44475ce52a893bc7cadba79a6351960ca7e12219e3b7f3a04da4d29c39864e4", - "typeString": "literal_string \"dispensationPct\"" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 257, + "id": 1729, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "4742:9:1", + "referencedDeclaration": 3696, + "src": "4708:9:5", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 259, + "id": 1734, "isConstant": false, "isLValue": false, "isPure": true, @@ -17875,13 +18395,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4742:28:1", + "src": "4708:46:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "4722:48:1", + "src": "4670:84:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17895,7 +18415,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 267, + "id": 1748, "isConstant": false, "isLValue": false, "isPure": false, @@ -17905,37 +18425,89 @@ "arguments": [ { "argumentTypes": null, - "id": 262, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 234, - "src": "4791:5:1", + "arguments": [ + { + "argumentTypes": null, + "id": 1739, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1700, + "src": "4792:5:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 1737, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "4775:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1738, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4775:16:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1740, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4775:23:5", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 261, + "id": 1736, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "4781:9:1", + "referencedDeclaration": 3696, + "src": "4765:9:5", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 263, + "id": 1741, "isConstant": false, "isLValue": false, "isPure": false, @@ -17943,7 +18515,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4781:16:1", + "src": "4765:34:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -17956,42 +18528,94 @@ "arguments": [ { "argumentTypes": null, - "hexValue": "7044697370656e736174696f6e506374", - "id": 265, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "7044697370656e736174696f6e506374", + "id": 1745, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4830:18:5", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_05a3daf44f91da292c219c05dc954c342940b8aa851b594c6aaec71e37d44b79", + "typeString": "literal_string \"pDispensationPct\"" + }, + "value": "pDispensationPct" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_stringliteral_05a3daf44f91da292c219c05dc954c342940b8aa851b594c6aaec71e37d44b79", + "typeString": "literal_string \"pDispensationPct\"" + } + ], + "expression": { + "argumentTypes": null, + "id": 1743, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "4813:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 1744, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4813:16:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 1746, "isConstant": false, "isLValue": false, "isPure": true, - "kind": "string", + "kind": "functionCall", "lValueRequested": false, - "nodeType": "Literal", - "src": "4811:18:1", - "subdenomination": null, + "names": [], + "nodeType": "FunctionCall", + "src": "4813:36:5", "typeDescriptions": { - "typeIdentifier": "t_stringliteral_05a3daf44f91da292c219c05dc954c342940b8aa851b594c6aaec71e37d44b79", - "typeString": "literal_string \"pDispensationPct\"" - }, - "value": "pDispensationPct" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" + } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_stringliteral_05a3daf44f91da292c219c05dc954c342940b8aa851b594c6aaec71e37d44b79", - "typeString": "literal_string \"pDispensationPct\"" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 264, + "id": 1742, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "4801:9:1", + "referencedDeclaration": 3696, + "src": "4803:9:5", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 266, + "id": 1747, "isConstant": false, "isLValue": false, "isPure": true, @@ -17999,32 +18623,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4801:29:1", + "src": "4803:47:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "4781:49:1", + "src": "4765:85:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "4722:108:1", + "src": "4670:180:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 276, + "id": 1757, "nodeType": "IfStatement", - "src": "4718:151:1", + "src": "4666:223:5", "trueBody": { - "id": 275, + "id": 1756, "nodeType": "Block", - "src": "4832:37:1", + "src": "4852:37:5", "statements": [ { "expression": { @@ -18036,19 +18660,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 272, + "id": 1753, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 270, + "id": 1751, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 236, - "src": "4848:6:1", + "referencedDeclaration": 1702, + "src": "4868:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18059,14 +18683,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "313030", - "id": 271, + "id": 1752, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "4858:3:1", + "src": "4878:3:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -18074,7 +18698,7 @@ }, "value": "100" }, - "src": "4848:13:1", + "src": "4868:13:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18088,21 +18712,21 @@ "typeString": "bool" } ], - "id": 269, + "id": 1750, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4840:7:1", + "referencedDeclaration": 3705, + "src": "4860:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 273, + "id": 1754, "isConstant": false, "isLValue": false, "isPure": false, @@ -18110,15 +18734,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4840:22:1", + "src": "4860:22:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 274, + "id": 1755, "nodeType": "ExpressionStatement", - "src": "4840:22:1" + "src": "4860:22:5" } ] } @@ -18129,7 +18753,7 @@ "arguments": [ { "argumentTypes": null, - "id": 281, + "id": 1762, "isConstant": false, "isLValue": false, "isPure": false, @@ -18137,18 +18761,18 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4883:19:1", + "src": "4903:19:5", "subExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 279, + "id": 1760, "name": "propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "4895:6:1", + "referencedDeclaration": 1714, + "src": "4915:6:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -18162,18 +18786,18 @@ "typeString": "bytes32" } ], - "id": 278, + "id": 1759, "name": "propExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "4884:10:1", + "referencedDeclaration": 2258, + "src": "4904:10:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 280, + "id": 1761, "isConstant": false, "isLValue": false, "isPure": false, @@ -18181,7 +18805,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4884:18:1", + "src": "4904:18:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18200,21 +18824,21 @@ "typeString": "bool" } ], - "id": 277, + "id": 1758, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4875:7:1", + "referencedDeclaration": 3705, + "src": "4895:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 282, + "id": 1763, "isConstant": false, "isLValue": false, "isPure": false, @@ -18222,15 +18846,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4875:28:1", + "src": "4895:28:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 283, + "id": 1764, "nodeType": "ExpressionStatement", - "src": "4875:28:1" + "src": "4895:28:5" }, { "expression": { @@ -18242,7 +18866,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 289, + "id": 1770, "isConstant": false, "isLValue": false, "isPure": false, @@ -18252,12 +18876,12 @@ "arguments": [ { "argumentTypes": null, - "id": 286, + "id": 1767, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 234, - "src": "4951:5:1", + "referencedDeclaration": 1700, + "src": "4971:5:5", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -18271,18 +18895,18 @@ "typeString": "string memory" } ], - "id": 285, + "id": 1766, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "4947:3:1", + "referencedDeclaration": 2349, + "src": "4967:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 287, + "id": 1768, "isConstant": false, "isLValue": false, "isPure": false, @@ -18290,7 +18914,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4947:10:1", + "src": "4967:10:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18300,18 +18924,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 288, + "id": 1769, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 236, - "src": "4961:6:1", + "referencedDeclaration": 1702, + "src": "4981:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4947:20:1", + "src": "4967:20:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18325,21 +18949,21 @@ "typeString": "bool" } ], - "id": 284, + "id": 1765, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4939:7:1", + "referencedDeclaration": 3705, + "src": "4959:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 290, + "id": 1771, "isConstant": false, "isLValue": false, "isPure": false, @@ -18347,20 +18971,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4939:29:1", + "src": "4959:29:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 291, + "id": 1772, "nodeType": "ExpressionStatement", - "src": "4939:29:1" + "src": "4959:29:5" }, { "expression": { "argumentTypes": null, - "id": 328, + "id": 1809, "isConstant": false, "isLValue": false, "isPure": false, @@ -18369,26 +18993,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 292, + "id": 1773, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "5049:9:1", + "referencedDeclaration": 1587, + "src": "5069:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 294, + "id": 1775, "indexExpression": { "argumentTypes": null, - "id": 293, + "id": 1774, "name": "propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "5059:6:1", + "referencedDeclaration": 1714, + "src": "5079:6:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -18399,9 +19023,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "5049:17:1", + "src": "5069:17:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, @@ -18419,14 +19043,14 @@ { "argumentTypes": null, "hexValue": "704170706c7953746167654c656e", - "id": 299, + "id": 1780, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5114:16:1", + "src": "5134:16:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_5b5170ca3f1920aed95b983e4a145c32a025f4a29a71df82746241afd472a9d8", @@ -18442,18 +19066,18 @@ "typeString": "literal_string \"pApplyStageLen\"" } ], - "id": 298, + "id": 1779, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "5110:3:1", + "referencedDeclaration": 2349, + "src": "5130:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 300, + "id": 1781, "isConstant": false, "isLValue": false, "isPure": false, @@ -18461,7 +19085,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5110:21:1", + "src": "5130:21:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18477,32 +19101,32 @@ ], "expression": { "argumentTypes": null, - "id": 296, + "id": 1777, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "5102:3:1", + "referencedDeclaration": 3704, + "src": "5122:3:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 297, + "id": 1778, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "5102:7:1", + "referencedDeclaration": 3686, + "src": "5122:7:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 301, + "id": 1782, "isConstant": false, "isLValue": false, "isPure": false, @@ -18510,7 +19134,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5102:30:1", + "src": "5122:30:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18519,14 +19143,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 302, + "id": 1783, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5153:1:1", + "src": "5173:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -18536,12 +19160,12 @@ }, { "argumentTypes": null, - "id": 303, + "id": 1784, "name": "deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 242, - "src": "5171:7:1", + "referencedDeclaration": 1708, + "src": "5191:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18549,12 +19173,12 @@ }, { "argumentTypes": null, - "id": 304, + "id": 1785, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 234, - "src": "5192:5:1", + "referencedDeclaration": 1700, + "src": "5212:5:5", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -18564,18 +19188,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 305, + "id": 1786, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5212:3:1", + "referencedDeclaration": 3702, + "src": "5232:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 306, + "id": 1787, "isConstant": false, "isLValue": false, "isPure": false, @@ -18583,7 +19207,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5212:10:1", + "src": "5232:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18594,12 +19218,12 @@ "arguments": [ { "argumentTypes": null, - "id": 324, + "id": 1805, "name": "PROCESSBY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 128, - "src": "5359:9:1", + "referencedDeclaration": 1594, + "src": "5379:9:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18622,14 +19246,14 @@ { "argumentTypes": null, "hexValue": "7052657665616c53746167654c656e", - "id": 320, + "id": 1801, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5326:17:1", + "src": "5346:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_fb97b9af270fc6f948089d10e64865cacad847ebc2ed8f2c10065db2f3593fa5", @@ -18645,18 +19269,18 @@ "typeString": "literal_string \"pRevealStageLen\"" } ], - "id": 319, + "id": 1800, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "5322:3:1", + "referencedDeclaration": 2349, + "src": "5342:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 321, + "id": 1802, "isConstant": false, "isLValue": false, "isPure": false, @@ -18664,7 +19288,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5322:22:1", + "src": "5342:22:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18687,14 +19311,14 @@ { "argumentTypes": null, "hexValue": "70436f6d6d697453746167654c656e", - "id": 315, + "id": 1796, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5289:17:1", + "src": "5309:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_8ba0bfd13d315213bdff16c58a613af32380ba99f9d780656d5dec1267165fb1", @@ -18710,18 +19334,18 @@ "typeString": "literal_string \"pCommitStageLen\"" } ], - "id": 314, + "id": 1795, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "5285:3:1", + "referencedDeclaration": 2349, + "src": "5305:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 316, + "id": 1797, "isConstant": false, "isLValue": false, "isPure": false, @@ -18729,7 +19353,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5285:22:1", + "src": "5305:22:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18752,14 +19376,14 @@ { "argumentTypes": null, "hexValue": "704170706c7953746167654c656e", - "id": 310, + "id": 1791, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5253:16:1", + "src": "5273:16:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_5b5170ca3f1920aed95b983e4a145c32a025f4a29a71df82746241afd472a9d8", @@ -18775,18 +19399,18 @@ "typeString": "literal_string \"pApplyStageLen\"" } ], - "id": 309, + "id": 1790, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "5249:3:1", + "referencedDeclaration": 2349, + "src": "5269:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 311, + "id": 1792, "isConstant": false, "isLValue": false, "isPure": false, @@ -18794,7 +19418,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5249:21:1", + "src": "5269:21:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18810,32 +19434,32 @@ ], "expression": { "argumentTypes": null, - "id": 307, + "id": 1788, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "5241:3:1", + "referencedDeclaration": 3704, + "src": "5261:3:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 308, + "id": 1789, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "5241:7:1", + "referencedDeclaration": 3686, + "src": "5261:7:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 312, + "id": 1793, "isConstant": false, "isLValue": false, "isPure": false, @@ -18843,27 +19467,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5241:30:1", + "src": "5261:30:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 313, + "id": 1794, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "5241:43:1", + "referencedDeclaration": 3686, + "src": "5261:43:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 317, + "id": 1798, "isConstant": false, "isLValue": false, "isPure": false, @@ -18871,27 +19495,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5241:67:1", + "src": "5261:67:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 318, + "id": 1799, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "5241:80:1", + "referencedDeclaration": 3686, + "src": "5261:80:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 322, + "id": 1803, "isConstant": false, "isLValue": false, "isPure": false, @@ -18899,27 +19523,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5241:104:1", + "src": "5261:104:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 323, + "id": 1804, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "5241:117:1", + "referencedDeclaration": 3686, + "src": "5261:117:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 325, + "id": 1806, "isConstant": false, "isLValue": false, "isPure": false, @@ -18927,7 +19551,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5241:128:1", + "src": "5261:128:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18935,12 +19559,12 @@ }, { "argumentTypes": null, - "id": 326, + "id": 1807, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 236, - "src": "5384:6:1", + "referencedDeclaration": 1702, + "src": "5404:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18949,18 +19573,18 @@ ], "expression": { "argumentTypes": null, - "id": 295, + "id": 1776, "name": "ParamProposal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 94, - "src": "5069:13:1", + "referencedDeclaration": 1560, + "src": "5089:13:5", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_ParamProposal_$94_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_ParamProposal_$1560_storage_ptr_$", "typeString": "type(struct Parameterizer.ParamProposal storage pointer)" } }, - "id": 327, + "id": 1808, "isConstant": false, "isLValue": false, "isPure": false, @@ -18976,21 +19600,21 @@ "value" ], "nodeType": "FunctionCall", - "src": "5069:328:1", + "src": "5089:328:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "src": "5049:348:1", + "src": "5069:348:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, - "id": 329, + "id": 1810, "nodeType": "ExpressionStatement", - "src": "5049:348:1" + "src": "5069:348:5" }, { "expression": { @@ -19003,18 +19627,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 333, + "id": 1814, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5431:3:1", + "referencedDeclaration": 3702, + "src": "5451:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 334, + "id": 1815, "isConstant": false, "isLValue": false, "isPure": false, @@ -19022,7 +19646,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5431:10:1", + "src": "5451:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19030,25 +19654,25 @@ }, { "argumentTypes": null, - "id": 335, + "id": 1816, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3919, - "src": "5443:4:1", + "referencedDeclaration": 3727, + "src": "5463:4:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, { "argumentTypes": null, - "id": 336, + "id": 1817, "name": "deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 242, - "src": "5449:7:1", + "referencedDeclaration": 1708, + "src": "5469:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19062,7 +19686,7 @@ "typeString": "address" }, { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" }, { @@ -19072,32 +19696,32 @@ ], "expression": { "argumentTypes": null, - "id": 331, + "id": 1812, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "5412:5:1", + "referencedDeclaration": 1589, + "src": "5432:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 332, + "id": 1813, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 3747, - "src": "5412:18:1", + "referencedDeclaration": 390, + "src": "5432:18:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 337, + "id": 1818, "isConstant": false, "isLValue": false, "isPure": false, @@ -19105,7 +19729,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5412:45:1", + "src": "5432:45:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19119,21 +19743,21 @@ "typeString": "bool" } ], - "id": 330, + "id": 1811, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5404:7:1", + "referencedDeclaration": 3705, + "src": "5424:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 338, + "id": 1819, "isConstant": false, "isLValue": false, "isPure": false, @@ -19141,15 +19765,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5404:54:1", + "src": "5424:54:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 339, + "id": 1820, "nodeType": "ExpressionStatement", - "src": "5404:54:1" + "src": "5424:54:5" }, { "eventCall": { @@ -19157,12 +19781,12 @@ "arguments": [ { "argumentTypes": null, - "id": 341, + "id": 1822, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 234, - "src": "5529:5:1", + "referencedDeclaration": 1700, + "src": "5556:5:5", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -19170,12 +19794,12 @@ }, { "argumentTypes": null, - "id": 342, + "id": 1823, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 236, - "src": "5536:6:1", + "referencedDeclaration": 1702, + "src": "5569:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19183,12 +19807,12 @@ }, { "argumentTypes": null, - "id": 343, + "id": 1824, "name": "propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "5544:6:1", + "referencedDeclaration": 1714, + "src": "5583:6:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19196,12 +19820,12 @@ }, { "argumentTypes": null, - "id": 344, + "id": 1825, "name": "deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 242, - "src": "5552:7:1", + "referencedDeclaration": 1708, + "src": "5597:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19213,26 +19837,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 345, + "id": 1826, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "5561:9:1", + "referencedDeclaration": 1587, + "src": "5612:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 347, + "id": 1828, "indexExpression": { "argumentTypes": null, - "id": 346, + "id": 1827, "name": "propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "5571:6:1", + "referencedDeclaration": 1714, + "src": "5622:6:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19243,21 +19867,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5561:17:1", + "src": "5612:17:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, - "id": 348, + "id": 1829, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "appExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5561:27:1", + "referencedDeclaration": 1547, + "src": "5612:27:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19267,18 +19891,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 349, + "id": 1830, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5590:3:1", + "referencedDeclaration": 3702, + "src": "5647:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 350, + "id": 1831, "isConstant": false, "isLValue": false, "isPure": false, @@ -19286,7 +19910,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5590:10:1", + "src": "5647:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19320,18 +19944,18 @@ "typeString": "address" } ], - "id": 340, + "id": 1821, "name": "_ReparameterizationProposal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 24, - "src": "5501:27:1", + "referencedDeclaration": 1490, + "src": "5521:27:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_uint256_$_t_bytes32_$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (string memory,uint256,bytes32,uint256,uint256,address)" } }, - "id": 351, + "id": 1832, "isConstant": false, "isLValue": false, "isPure": false, @@ -19339,39 +19963,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5501:100:1", + "src": "5521:142:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 352, + "id": 1833, "nodeType": "EmitStatement", - "src": "5496:105:1" + "src": "5516:147:5" }, { "expression": { "argumentTypes": null, - "id": 353, + "id": 1834, "name": "propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "5614:6:1", + "referencedDeclaration": 1714, + "src": "5677:6:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "functionReturnParameters": 240, - "id": 354, + "functionReturnParameters": 1706, + "id": 1835, "nodeType": "Return", - "src": "5607:13:1" + "src": "5670:13:5" } ] }, "documentation": "@notice propose a reparamaterization of the key _name's value to _value.\n@param _name the name of the proposed param to be set\n@param _value the proposed value to set the param to be set", - "id": 356, + "id": 1837, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -19379,16 +20003,16 @@ "name": "proposeReparameterization", "nodeType": "FunctionDefinition", "parameters": { - "id": 237, + "id": 1703, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 234, + "id": 1700, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 356, - "src": "4573:12:1", + "scope": 1837, + "src": "4503:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19396,10 +20020,10 @@ "typeString": "string" }, "typeName": { - "id": 233, + "id": 1699, "name": "string", "nodeType": "ElementaryTypeName", - "src": "4573:6:1", + "src": "4503:6:5", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -19410,11 +20034,11 @@ }, { "constant": false, - "id": 236, + "id": 1702, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 356, - "src": "4587:11:1", + "scope": 1837, + "src": "4517:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19422,10 +20046,10 @@ "typeString": "uint256" }, "typeName": { - "id": 235, + "id": 1701, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4587:4:1", + "src": "4517:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19435,20 +20059,20 @@ "visibility": "internal" } ], - "src": "4572:27:1" + "src": "4502:27:5" }, "payable": false, "returnParameters": { - "id": 240, + "id": 1706, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 239, + "id": 1705, "name": "", "nodeType": "VariableDeclaration", - "scope": 356, - "src": "4616:7:1", + "scope": 1837, + "src": "4546:7:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19456,10 +20080,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 238, + "id": 1704, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4616:7:1", + "src": "4546:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19469,47 +20093,47 @@ "visibility": "internal" } ], - "src": "4615:9:1" + "src": "4545:9:5" }, - "scope": 1003, - "src": "4538:1087:1", + "scope": 2490, + "src": "4468:1220:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 468, + "id": 1949, "nodeType": "Block", - "src": "5854:938:1", + "src": "5917:971:5", "statements": [ { "assignments": [ - 364 + 1845 ], "declarations": [ { "constant": false, - "id": 364, + "id": 1845, "name": "prop", "nodeType": "VariableDeclaration", - "scope": 469, - "src": "5860:25:1", + "scope": 1950, + "src": "5923:25:5", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal" }, "typeName": { "contractScope": null, - "id": 363, + "id": 1844, "name": "ParamProposal", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 94, - "src": "5860:13:1", + "referencedDeclaration": 1560, + "src": "5923:13:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal" } }, @@ -19517,31 +20141,31 @@ "visibility": "internal" } ], - "id": 368, + "id": 1849, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 365, + "id": 1846, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "5888:9:1", + "referencedDeclaration": 1587, + "src": "5951:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 367, + "id": 1848, "indexExpression": { "argumentTypes": null, - "id": 366, + "id": 1847, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 358, - "src": "5898:7:1", + "referencedDeclaration": 1839, + "src": "5961:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19552,27 +20176,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5888:18:1", + "src": "5951:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5860:46:1" + "src": "5923:46:5" }, { "assignments": [ - 370 + 1851 ], "declarations": [ { "constant": false, - "id": 370, + "id": 1851, "name": "deposit", "nodeType": "VariableDeclaration", - "scope": 469, - "src": "5912:12:1", + "scope": 1950, + "src": "5975:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19580,10 +20204,10 @@ "typeString": "uint256" }, "typeName": { - "id": 369, + "id": 1850, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5912:4:1", + "src": "5975:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19593,38 +20217,38 @@ "visibility": "internal" } ], - "id": 373, + "id": 1854, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 371, + "id": 1852, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 364, - "src": "5927:4:1", + "referencedDeclaration": 1845, + "src": "5990:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 372, + "id": 1853, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "deposit", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "5927:12:1", + "referencedDeclaration": 1551, + "src": "5990:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "5912:27:1" + "src": "5975:27:5" }, { "expression": { @@ -19636,7 +20260,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 382, + "id": 1863, "isConstant": false, "isLValue": false, "isPure": false, @@ -19646,12 +20270,12 @@ "arguments": [ { "argumentTypes": null, - "id": 376, + "id": 1857, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 358, - "src": "5965:7:1", + "referencedDeclaration": 1839, + "src": "6028:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19665,18 +20289,18 @@ "typeString": "bytes32" } ], - "id": 375, + "id": 1856, "name": "propExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 777, - "src": "5954:10:1", + "referencedDeclaration": 2258, + "src": "6017:10:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 377, + "id": 1858, "isConstant": false, "isLValue": false, "isPure": false, @@ -19684,7 +20308,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5954:19:1", + "src": "6017:19:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19698,7 +20322,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 381, + "id": 1862, "isConstant": false, "isLValue": false, "isPure": false, @@ -19707,26 +20331,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 378, + "id": 1859, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 364, - "src": "5977:4:1", + "referencedDeclaration": 1845, + "src": "6040:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 379, + "id": 1860, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "5977:16:1", + "referencedDeclaration": 1549, + "src": "6040:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19737,14 +20361,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 380, + "id": 1861, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5997:1:1", + "src": "6060:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -19752,13 +20376,13 @@ }, "value": "0" }, - "src": "5977:21:1", + "src": "6040:21:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "5954:44:1", + "src": "6017:44:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19772,21 +20396,21 @@ "typeString": "bool" } ], - "id": 374, + "id": 1855, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5946:7:1", + "referencedDeclaration": 3705, + "src": "6009:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 383, + "id": 1864, "isConstant": false, "isLValue": false, "isPure": false, @@ -19794,28 +20418,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5946:53:1", + "src": "6009:53:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 384, + "id": 1865, "nodeType": "ExpressionStatement", - "src": "5946:53:1" + "src": "6009:53:5" }, { "assignments": [ - 386 + 1867 ], "declarations": [ { "constant": false, - "id": 386, + "id": 1867, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 469, - "src": "6023:11:1", + "scope": 1950, + "src": "6086:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19823,10 +20447,10 @@ "typeString": "uint256" }, "typeName": { - "id": 385, + "id": 1866, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6023:4:1", + "src": "6086:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19836,7 +20460,7 @@ "visibility": "internal" } ], - "id": 399, + "id": 1880, "initialValue": { "argumentTypes": null, "arguments": [ @@ -19846,14 +20470,14 @@ { "argumentTypes": null, "hexValue": "70566f746551756f72756d", - "id": 390, + "id": 1871, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6065:13:1", + "src": "6128:13:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_1cd8ca3a1baaf24ca4431f7b59b78854d08ce96815f9b5677de2c92385fb9138", @@ -19869,18 +20493,18 @@ "typeString": "literal_string \"pVoteQuorum\"" } ], - "id": 389, + "id": 1870, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "6061:3:1", + "referencedDeclaration": 2349, + "src": "6124:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 391, + "id": 1872, "isConstant": false, "isLValue": false, "isPure": false, @@ -19888,7 +20512,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6061:18:1", + "src": "6124:18:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19900,14 +20524,14 @@ { "argumentTypes": null, "hexValue": "70436f6d6d697453746167654c656e", - "id": 393, + "id": 1874, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6091:17:1", + "src": "6154:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_8ba0bfd13d315213bdff16c58a613af32380ba99f9d780656d5dec1267165fb1", @@ -19923,18 +20547,18 @@ "typeString": "literal_string \"pCommitStageLen\"" } ], - "id": 392, + "id": 1873, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "6087:3:1", + "referencedDeclaration": 2349, + "src": "6150:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 394, + "id": 1875, "isConstant": false, "isLValue": false, "isPure": false, @@ -19942,7 +20566,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6087:22:1", + "src": "6150:22:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19954,14 +20578,14 @@ { "argumentTypes": null, "hexValue": "7052657665616c53746167654c656e", - "id": 396, + "id": 1877, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6121:17:1", + "src": "6184:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_fb97b9af270fc6f948089d10e64865cacad847ebc2ed8f2c10065db2f3593fa5", @@ -19977,18 +20601,18 @@ "typeString": "literal_string \"pRevealStageLen\"" } ], - "id": 395, + "id": 1876, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "6117:3:1", + "referencedDeclaration": 2349, + "src": "6180:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 397, + "id": 1878, "isConstant": false, "isLValue": false, "isPure": false, @@ -19996,7 +20620,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6117:22:1", + "src": "6180:22:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20020,32 +20644,32 @@ ], "expression": { "argumentTypes": null, - "id": 387, + "id": 1868, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "6037:6:1", + "referencedDeclaration": 1591, + "src": "6100:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 388, + "id": 1869, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "startPoll", "nodeType": "MemberAccess", - "referencedDeclaration": 3121, - "src": "6037:16:1", + "referencedDeclaration": 1101, + "src": "6100:16:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) external returns (uint256)" } }, - "id": 398, + "id": 1879, "isConstant": false, "isLValue": false, "isPure": false, @@ -20053,19 +20677,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6037:108:1", + "src": "6100:108:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "6023:122:1" + "src": "6086:122:5" }, { "expression": { "argumentTypes": null, - "id": 423, + "id": 1904, "isConstant": false, "isLValue": false, "isPure": false, @@ -20074,26 +20698,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 400, + "id": 1881, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "6152:10:1", + "referencedDeclaration": 1583, + "src": "6215:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 402, + "id": 1883, "indexExpression": { "argumentTypes": null, - "id": 401, + "id": 1882, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6163:6:1", + "referencedDeclaration": 1867, + "src": "6226:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20104,9 +20728,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "6152:18:1", + "src": "6215:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, @@ -20119,18 +20743,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 404, + "id": 1885, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "6203:3:1", + "referencedDeclaration": 3702, + "src": "6266:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 405, + "id": 1886, "isConstant": false, "isLValue": false, "isPure": false, @@ -20138,7 +20762,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6203:10:1", + "src": "6266:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20150,14 +20774,14 @@ { "argumentTypes": null, "hexValue": "313030", - "id": 417, + "id": 1898, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6293:3:1", + "src": "6356:3:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -20178,12 +20802,12 @@ "arguments": [ { "argumentTypes": null, - "id": 414, + "id": 1895, "name": "deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 370, - "src": "6280:7:1", + "referencedDeclaration": 1851, + "src": "6343:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20203,14 +20827,14 @@ { "argumentTypes": null, "hexValue": "313030", - "id": 408, + "id": 1889, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6246:3:1", + "src": "6309:3:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -20224,14 +20848,14 @@ { "argumentTypes": null, "hexValue": "7044697370656e736174696f6e506374", - "id": 410, + "id": 1891, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "6255:18:1", + "src": "6318:18:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_05a3daf44f91da292c219c05dc954c342940b8aa851b594c6aaec71e37d44b79", @@ -20247,18 +20871,18 @@ "typeString": "literal_string \"pDispensationPct\"" } ], - "id": 409, + "id": 1890, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "6251:3:1", + "referencedDeclaration": 2349, + "src": "6314:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 411, + "id": 1892, "isConstant": false, "isLValue": false, "isPure": false, @@ -20266,7 +20890,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6251:23:1", + "src": "6314:23:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20286,32 +20910,32 @@ ], "expression": { "argumentTypes": null, - "id": 406, + "id": 1887, "name": "SafeMath", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3877, - "src": "6233:8:1", + "referencedDeclaration": 3687, + "src": "6296:8:5", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_SafeMath_$3877_$", + "typeIdentifier": "t_type$_t_contract$_SafeMath_$3687_$", "typeString": "type(library SafeMath)" } }, - "id": 407, + "id": 1888, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 3852, - "src": "6233:12:1", + "referencedDeclaration": 3662, + "src": "6296:12:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 412, + "id": 1893, "isConstant": false, "isLValue": false, "isPure": false, @@ -20319,27 +20943,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6233:42:1", + "src": "6296:42:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 413, + "id": 1894, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 3814, - "src": "6233:46:1", + "referencedDeclaration": 3628, + "src": "6296:46:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 415, + "id": 1896, "isConstant": false, "isLValue": false, "isPure": false, @@ -20347,27 +20971,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6233:55:1", + "src": "6296:55:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 416, + "id": 1897, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 3832, - "src": "6233:59:1", + "referencedDeclaration": 3642, + "src": "6296:59:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 418, + "id": 1899, "isConstant": false, "isLValue": false, "isPure": false, @@ -20375,7 +20999,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6233:64:1", + "src": "6296:64:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20383,12 +21007,12 @@ }, { "argumentTypes": null, - "id": 419, + "id": 1900, "name": "deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 370, - "src": "6312:7:1", + "referencedDeclaration": 1851, + "src": "6375:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20397,14 +21021,14 @@ { "argumentTypes": null, "hexValue": "66616c7365", - "id": 420, + "id": 1901, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "6337:5:1", + "src": "6400:5:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -20415,14 +21039,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 421, + "id": 1902, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6365:1:1", + "src": "6428:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -20433,18 +21057,18 @@ ], "expression": { "argumentTypes": null, - "id": 403, + "id": 1884, "name": "Challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 109, - "src": "6173:9:1", + "referencedDeclaration": 1575, + "src": "6236:9:5", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Challenge_$109_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Challenge_$1575_storage_ptr_$", "typeString": "type(struct Parameterizer.Challenge storage pointer)" } }, - "id": 422, + "id": 1903, "isConstant": false, "isLValue": false, "isPure": false, @@ -20458,26 +21082,26 @@ "winningTokens" ], "nodeType": "FunctionCall", - "src": "6173:200:1", + "src": "6236:200:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_memory", + "typeIdentifier": "t_struct$_Challenge_$1575_memory", "typeString": "struct Parameterizer.Challenge memory" } }, - "src": "6152:221:1", + "src": "6215:221:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 424, + "id": 1905, "nodeType": "ExpressionStatement", - "src": "6152:221:1" + "src": "6215:221:5" }, { "expression": { "argumentTypes": null, - "id": 430, + "id": 1911, "isConstant": false, "isLValue": false, "isPure": false, @@ -20488,26 +21112,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 425, + "id": 1906, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "6380:9:1", + "referencedDeclaration": 1587, + "src": "6443:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 427, + "id": 1908, "indexExpression": { "argumentTypes": null, - "id": 426, + "id": 1907, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 358, - "src": "6390:7:1", + "referencedDeclaration": 1839, + "src": "6453:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -20518,21 +21142,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6380:18:1", + "src": "6443:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, - "id": 428, + "id": 1909, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "6380:30:1", + "referencedDeclaration": 1549, + "src": "6443:30:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20542,26 +21166,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 429, + "id": 1910, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6413:6:1", + "referencedDeclaration": 1867, + "src": "6476:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6380:39:1", + "src": "6443:39:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 431, + "id": 1912, "nodeType": "ExpressionStatement", - "src": "6380:39:1" + "src": "6443:39:5" }, { "expression": { @@ -20574,18 +21198,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 435, + "id": 1916, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "6542:3:1", + "referencedDeclaration": 3702, + "src": "6605:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 436, + "id": 1917, "isConstant": false, "isLValue": false, "isPure": false, @@ -20593,7 +21217,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6542:10:1", + "src": "6605:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20601,25 +21225,25 @@ }, { "argumentTypes": null, - "id": 437, + "id": 1918, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3919, - "src": "6554:4:1", + "referencedDeclaration": 3727, + "src": "6617:4:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, { "argumentTypes": null, - "id": 438, + "id": 1919, "name": "deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 370, - "src": "6560:7:1", + "referencedDeclaration": 1851, + "src": "6623:7:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20633,7 +21257,7 @@ "typeString": "address" }, { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" }, { @@ -20643,32 +21267,32 @@ ], "expression": { "argumentTypes": null, - "id": 433, + "id": 1914, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "6523:5:1", + "referencedDeclaration": 1589, + "src": "6586:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 434, + "id": 1915, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 3747, - "src": "6523:18:1", + "referencedDeclaration": 390, + "src": "6586:18:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 439, + "id": 1920, "isConstant": false, "isLValue": false, "isPure": false, @@ -20676,7 +21300,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6523:45:1", + "src": "6586:45:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20690,21 +21314,21 @@ "typeString": "bool" } ], - "id": 432, + "id": 1913, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "6515:7:1", + "referencedDeclaration": 3705, + "src": "6578:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 440, + "id": 1921, "isConstant": false, "isLValue": false, "isPure": false, @@ -20712,26 +21336,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6515:54:1", + "src": "6578:54:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 441, + "id": 1922, "nodeType": "ExpressionStatement", - "src": "6515:54:1" + "src": "6578:54:5" }, { "assignments": [], "declarations": [ { "constant": false, - "id": 443, + "id": 1924, "name": "commitEndDate", "nodeType": "VariableDeclaration", - "scope": 469, - "src": "6576:18:1", + "scope": 1950, + "src": "6639:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20739,10 +21363,10 @@ "typeString": "uint256" }, "typeName": { - "id": 442, + "id": 1923, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6576:4:1", + "src": "6639:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20752,21 +21376,21 @@ "visibility": "internal" } ], - "id": 444, + "id": 1925, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "6576:18:1" + "src": "6639:18:5" }, { "assignments": [], "declarations": [ { "constant": false, - "id": 446, + "id": 1927, "name": "revealEndDate", "nodeType": "VariableDeclaration", - "scope": 469, - "src": "6600:18:1", + "scope": 1950, + "src": "6663:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20774,10 +21398,10 @@ "typeString": "uint256" }, "typeName": { - "id": 445, + "id": 1926, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6600:4:1", + "src": "6663:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20787,15 +21411,15 @@ "visibility": "internal" } ], - "id": 447, + "id": 1928, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "6600:18:1" + "src": "6663:18:5" }, { "expression": { "argumentTypes": null, - "id": 455, + "id": 1936, "isConstant": false, "isLValue": false, "isPure": false, @@ -20805,12 +21429,12 @@ "components": [ { "argumentTypes": null, - "id": 448, + "id": 1929, "name": "commitEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 443, - "src": "6625:13:1", + "referencedDeclaration": 1924, + "src": "6688:13:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20818,12 +21442,12 @@ }, { "argumentTypes": null, - "id": 449, + "id": 1930, "name": "revealEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 446, - "src": "6640:13:1", + "referencedDeclaration": 1927, + "src": "6703:13:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20831,14 +21455,14 @@ }, null ], - "id": 450, + "id": 1931, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", - "src": "6624:31:1", + "src": "6687:31:5", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$__$", "typeString": "tuple(uint256,uint256,)" @@ -20851,12 +21475,12 @@ "arguments": [ { "argumentTypes": null, - "id": 453, + "id": 1934, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6673:6:1", + "referencedDeclaration": 1867, + "src": "6736:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20872,32 +21496,32 @@ ], "expression": { "argumentTypes": null, - "id": 451, + "id": 1932, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "6658:6:1", + "referencedDeclaration": 1591, + "src": "6721:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 452, + "id": 1933, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "pollMap", "nodeType": "MemberAccess", - "referencedDeclaration": 2561, - "src": "6658:14:1", + "referencedDeclaration": 535, + "src": "6721:14:5", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "function (uint256) view external returns (uint256,uint256,uint256,uint256,uint256)" } }, - "id": 454, + "id": 1935, "isConstant": false, "isLValue": false, "isPure": false, @@ -20905,21 +21529,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6658:22:1", + "src": "6721:22:5", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(uint256,uint256,uint256,uint256,uint256)" } }, - "src": "6624:56:1", + "src": "6687:56:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 456, + "id": 1937, "nodeType": "ExpressionStatement", - "src": "6624:56:1" + "src": "6687:56:5" }, { "eventCall": { @@ -20927,12 +21551,12 @@ "arguments": [ { "argumentTypes": null, - "id": 458, + "id": 1939, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 358, - "src": "6710:7:1", + "referencedDeclaration": 1839, + "src": "6776:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -20940,12 +21564,12 @@ }, { "argumentTypes": null, - "id": 459, + "id": 1940, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6719:6:1", + "referencedDeclaration": 1867, + "src": "6791:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20953,12 +21577,12 @@ }, { "argumentTypes": null, - "id": 460, + "id": 1941, "name": "commitEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 443, - "src": "6727:13:1", + "referencedDeclaration": 1924, + "src": "6805:13:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20966,12 +21590,12 @@ }, { "argumentTypes": null, - "id": 461, + "id": 1942, "name": "revealEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 446, - "src": "6742:13:1", + "referencedDeclaration": 1927, + "src": "6826:13:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20981,18 +21605,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 462, + "id": 1943, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "6757:3:1", + "referencedDeclaration": 3702, + "src": "6847:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 463, + "id": 1944, "isConstant": false, "isLValue": false, "isPure": false, @@ -21000,7 +21624,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6757:10:1", + "src": "6847:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21030,18 +21654,18 @@ "typeString": "address" } ], - "id": 457, + "id": 1938, "name": "_NewChallenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 36, - "src": "6696:13:1", + "referencedDeclaration": 1502, + "src": "6755:13:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (bytes32,uint256,uint256,uint256,address)" } }, - "id": 464, + "id": 1945, "isConstant": false, "isLValue": false, "isPure": false, @@ -21049,39 +21673,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6696:72:1", + "src": "6755:108:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 465, + "id": 1946, "nodeType": "EmitStatement", - "src": "6691:77:1" + "src": "6750:113:5" }, { "expression": { "argumentTypes": null, - "id": 466, + "id": 1947, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "6781:6:1", + "referencedDeclaration": 1867, + "src": "6877:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 362, - "id": 467, + "functionReturnParameters": 1843, + "id": 1948, "nodeType": "Return", - "src": "6774:13:1" + "src": "6870:13:5" } ] }, "documentation": "@notice challenge the provided proposal ID, and put tokens at stake to do so.\n@param _propID the proposal ID to challenge", - "id": 469, + "id": 1950, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -21089,16 +21713,16 @@ "name": "challengeReparameterization", "nodeType": "FunctionDefinition", "parameters": { - "id": 359, + "id": 1840, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 358, + "id": 1839, "name": "_propID", "nodeType": "VariableDeclaration", - "scope": 469, - "src": "5803:15:1", + "scope": 1950, + "src": "5866:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21106,10 +21730,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 357, + "id": 1838, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5803:7:1", + "src": "5866:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21119,20 +21743,20 @@ "visibility": "internal" } ], - "src": "5802:17:1" + "src": "5865:17:5" }, "payable": false, "returnParameters": { - "id": 362, + "id": 1843, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 361, + "id": 1842, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 469, - "src": "5836:16:1", + "scope": 1950, + "src": "5899:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21140,10 +21764,10 @@ "typeString": "uint256" }, "typeName": { - "id": 360, + "id": 1841, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5836:4:1", + "src": "5899:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21153,47 +21777,47 @@ "visibility": "internal" } ], - "src": "5835:18:1" + "src": "5898:18:5" }, - "scope": 1003, - "src": "5766:1026:1", + "scope": 2490, + "src": "5829:1059:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 601, + "id": 2082, "nodeType": "Block", - "src": "7136:1559:1", + "src": "7232:1559:5", "statements": [ { "assignments": [ - 475 + 1956 ], "declarations": [ { "constant": false, - "id": 475, + "id": 1956, "name": "prop", "nodeType": "VariableDeclaration", - "scope": 602, - "src": "7142:26:1", + "scope": 2083, + "src": "7238:26:5", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal" }, "typeName": { "contractScope": null, - "id": 474, + "id": 1955, "name": "ParamProposal", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 94, - "src": "7142:13:1", + "referencedDeclaration": 1560, + "src": "7238:13:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal" } }, @@ -21201,31 +21825,31 @@ "visibility": "internal" } ], - "id": 479, + "id": 1960, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 476, + "id": 1957, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "7171:9:1", + "referencedDeclaration": 1587, + "src": "7267:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 478, + "id": 1959, "indexExpression": { "argumentTypes": null, - "id": 477, + "id": 1958, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "7181:7:1", + "referencedDeclaration": 1952, + "src": "7277:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21236,27 +21860,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7171:18:1", + "src": "7267:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "7142:47:1" + "src": "7238:47:5" }, { "assignments": [ - 481 + 1962 ], "declarations": [ { "constant": false, - "id": 481, + "id": 1962, "name": "propOwner", "nodeType": "VariableDeclaration", - "scope": 602, - "src": "7195:17:1", + "scope": 2083, + "src": "7291:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21264,10 +21888,10 @@ "typeString": "address" }, "typeName": { - "id": 480, + "id": 1961, "name": "address", "nodeType": "ElementaryTypeName", - "src": "7195:7:1", + "src": "7291:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21277,51 +21901,51 @@ "visibility": "internal" } ], - "id": 484, + "id": 1965, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 482, + "id": 1963, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "7215:4:1", + "referencedDeclaration": 1956, + "src": "7311:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal storage pointer" } }, - "id": 483, + "id": 1964, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 89, - "src": "7215:10:1", + "referencedDeclaration": 1555, + "src": "7311:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "VariableDeclarationStatement", - "src": "7195:30:1" + "src": "7291:30:5" }, { "assignments": [ - 486 + 1967 ], "declarations": [ { "constant": false, - "id": 486, + "id": 1967, "name": "propDeposit", "nodeType": "VariableDeclaration", - "scope": 602, - "src": "7231:16:1", + "scope": 2083, + "src": "7327:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21329,10 +21953,10 @@ "typeString": "uint256" }, "typeName": { - "id": 485, + "id": 1966, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7231:4:1", + "src": "7327:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21342,38 +21966,38 @@ "visibility": "internal" } ], - "id": 489, + "id": 1970, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 487, + "id": 1968, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "7250:4:1", + "referencedDeclaration": 1956, + "src": "7346:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal storage pointer" } }, - "id": 488, + "id": 1969, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "deposit", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "7250:12:1", + "referencedDeclaration": 1551, + "src": "7346:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "7231:31:1" + "src": "7327:31:5" }, { "condition": { @@ -21381,12 +22005,12 @@ "arguments": [ { "argumentTypes": null, - "id": 491, + "id": 1972, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "7452:7:1", + "referencedDeclaration": 1952, + "src": "7548:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21400,18 +22024,18 @@ "typeString": "bytes32" } ], - "id": 490, + "id": 1971, "name": "canBeSet", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 762, - "src": "7443:8:1", + "referencedDeclaration": 2243, + "src": "7539:8:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 492, + "id": 1973, "isConstant": false, "isLValue": false, "isPure": false, @@ -21419,7 +22043,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7443:17:1", + "src": "7539:17:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21431,12 +22055,12 @@ "arguments": [ { "argumentTypes": null, - "id": 523, + "id": 2004, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "7847:7:1", + "referencedDeclaration": 1952, + "src": "7943:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21450,18 +22074,18 @@ "typeString": "bytes32" } ], - "id": 522, + "id": 2003, "name": "challengeCanBeResolved", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 815, - "src": "7824:22:1", + "referencedDeclaration": 2296, + "src": "7920:22:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 524, + "id": 2005, "isConstant": false, "isLValue": false, "isPure": false, @@ -21469,7 +22093,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7824:31:1", + "src": "7920:31:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21482,19 +22106,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 533, + "id": 2014, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 530, + "id": 2011, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "7959:3:1", + "referencedDeclaration": 3704, + "src": "8055:3:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21506,41 +22130,41 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 531, + "id": 2012, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "7965:4:1", + "referencedDeclaration": 1956, + "src": "8061:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal storage pointer" } }, - "id": 532, + "id": 2013, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "processBy", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "7965:14:1", + "referencedDeclaration": 1557, + "src": "8061:14:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7959:20:1", + "src": "8055:20:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 555, + "id": 2036, "nodeType": "Block", - "src": "8208:151:1", + "src": "8304:151:5", "statements": [ { "expression": { @@ -21548,21 +22172,21 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 552, + "id": 2033, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 3897, - 3898 + 3707, + 3708 ], - "referencedDeclaration": 3897, - "src": "8344:6:1", + "referencedDeclaration": 3707, + "src": "8440:6:5", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 553, + "id": 2034, "isConstant": false, "isLValue": false, "isPure": false, @@ -21570,25 +22194,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8344:8:1", + "src": "8440:8:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 554, + "id": 2035, "nodeType": "ExpressionStatement", - "src": "8344:8:1" + "src": "8440:8:5" } ] }, - "id": 556, + "id": 2037, "nodeType": "IfStatement", - "src": "7955:404:1", + "src": "8051:404:5", "trueBody": { - "id": 551, + "id": 2032, "nodeType": "Block", - "src": "7981:221:1", + "src": "8077:221:5", "statements": [ { "eventCall": { @@ -21596,12 +22220,12 @@ "arguments": [ { "argumentTypes": null, - "id": 535, + "id": 2016, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "8099:7:1", + "referencedDeclaration": 1952, + "src": "8195:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21615,18 +22239,18 @@ "typeString": "bytes32" } ], - "id": 534, + "id": 2015, "name": "_ProposalExpired", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 48, - "src": "8082:16:1", + "referencedDeclaration": 1514, + "src": "8178:16:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 536, + "id": 2017, "isConstant": false, "isLValue": false, "isPure": false, @@ -21634,20 +22258,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8082:25:1", + "src": "8178:25:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 537, + "id": 2018, "nodeType": "EmitStatement", - "src": "8077:30:1" + "src": "8173:30:5" }, { "expression": { "argumentTypes": null, - "id": 541, + "id": 2022, "isConstant": false, "isLValue": false, "isPure": false, @@ -21655,31 +22279,31 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "8115:25:1", + "src": "8211:25:5", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 538, + "id": 2019, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "8122:9:1", + "referencedDeclaration": 1587, + "src": "8218:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 540, + "id": 2021, "indexExpression": { "argumentTypes": null, - "id": 539, + "id": 2020, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "8132:7:1", + "referencedDeclaration": 1952, + "src": "8228:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21690,9 +22314,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "8122:18:1", + "src": "8218:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, @@ -21701,9 +22325,9 @@ "typeString": "tuple()" } }, - "id": 542, + "id": 2023, "nodeType": "ExpressionStatement", - "src": "8115:25:1" + "src": "8211:25:5" }, { "expression": { @@ -21714,12 +22338,12 @@ "arguments": [ { "argumentTypes": null, - "id": 546, + "id": 2027, "name": "propOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 481, - "src": "8171:9:1", + "referencedDeclaration": 1962, + "src": "8267:9:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21727,12 +22351,12 @@ }, { "argumentTypes": null, - "id": 547, + "id": 2028, "name": "propDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 486, - "src": "8182:11:1", + "referencedDeclaration": 1967, + "src": "8278:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21752,32 +22376,32 @@ ], "expression": { "argumentTypes": null, - "id": 544, + "id": 2025, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "8156:5:1", + "referencedDeclaration": 1589, + "src": "8252:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 545, + "id": 2026, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "8156:14:1", + "referencedDeclaration": 431, + "src": "8252:14:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 548, + "id": 2029, "isConstant": false, "isLValue": false, "isPure": false, @@ -21785,7 +22409,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8156:38:1", + "src": "8252:38:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21799,21 +22423,21 @@ "typeString": "bool" } ], - "id": 543, + "id": 2024, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "8148:7:1", + "referencedDeclaration": 3705, + "src": "8244:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 549, + "id": 2030, "isConstant": false, "isLValue": false, "isPure": false, @@ -21821,26 +22445,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8148:47:1", + "src": "8244:47:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 550, + "id": 2031, "nodeType": "ExpressionStatement", - "src": "8148:47:1" + "src": "8244:47:5" } ] } }, - "id": 557, + "id": 2038, "nodeType": "IfStatement", - "src": "7820:539:1", + "src": "7916:539:5", "trueBody": { - "id": 529, + "id": 2010, "nodeType": "Block", - "src": "7857:92:1", + "src": "7953:92:5", "statements": [ { "expression": { @@ -21848,12 +22472,12 @@ "arguments": [ { "argumentTypes": null, - "id": 526, + "id": 2007, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "7934:7:1", + "referencedDeclaration": 1952, + "src": "8030:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21867,18 +22491,18 @@ "typeString": "bytes32" } ], - "id": 525, + "id": 2006, "name": "resolveChallenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 986, - "src": "7917:16:1", + "referencedDeclaration": 2470, + "src": "8013:16:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 527, + "id": 2008, "isConstant": false, "isLValue": false, "isPure": false, @@ -21886,26 +22510,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7917:25:1", + "src": "8013:25:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 528, + "id": 2009, "nodeType": "ExpressionStatement", - "src": "7917:25:1" + "src": "8013:25:5" } ] } }, - "id": 558, + "id": 2039, "nodeType": "IfStatement", - "src": "7439:920:1", + "src": "7535:920:5", "trueBody": { - "id": 521, + "id": 2002, "nodeType": "Block", - "src": "7462:352:1", + "src": "7558:352:5", "statements": [ { "expression": { @@ -21915,26 +22539,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 494, + "id": 1975, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "7635:4:1", + "referencedDeclaration": 1956, + "src": "7731:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal storage pointer" } }, - "id": 495, + "id": 1976, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "name", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "7635:9:1", + "referencedDeclaration": 1553, + "src": "7731:9:5", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -21944,26 +22568,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 496, + "id": 1977, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "7646:4:1", + "referencedDeclaration": 1956, + "src": "7742:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal storage pointer" } }, - "id": 497, + "id": 1978, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 93, - "src": "7646:10:1", + "referencedDeclaration": 1559, + "src": "7742:10:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21981,18 +22605,18 @@ "typeString": "uint256" } ], - "id": 493, + "id": 1974, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "7631:3:1", + "referencedDeclaration": 2489, + "src": "7727:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 498, + "id": 1979, "isConstant": false, "isLValue": false, "isPure": false, @@ -22000,15 +22624,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7631:26:1", + "src": "7727:26:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 499, + "id": 1980, "nodeType": "ExpressionStatement", - "src": "7631:26:1" + "src": "7727:26:5" }, { "eventCall": { @@ -22016,12 +22640,12 @@ "arguments": [ { "argumentTypes": null, - "id": 501, + "id": 1982, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "7688:7:1", + "referencedDeclaration": 1952, + "src": "7784:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22031,26 +22655,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 502, + "id": 1983, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "7697:4:1", + "referencedDeclaration": 1956, + "src": "7793:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal storage pointer" } }, - "id": 503, + "id": 1984, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "name", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "7697:9:1", + "referencedDeclaration": 1553, + "src": "7793:9:5", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -22060,26 +22684,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 504, + "id": 1985, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 475, - "src": "7708:4:1", + "referencedDeclaration": 1956, + "src": "7804:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal storage pointer" } }, - "id": 505, + "id": 1986, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 93, - "src": "7708:10:1", + "referencedDeclaration": 1559, + "src": "7804:10:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22101,18 +22725,18 @@ "typeString": "uint256" } ], - "id": 500, + "id": 1981, "name": "_ProposalAccepted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 44, - "src": "7670:17:1", + "referencedDeclaration": 1510, + "src": "7766:17:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (bytes32,string memory,uint256)" } }, - "id": 506, + "id": 1987, "isConstant": false, "isLValue": false, "isPure": false, @@ -22120,20 +22744,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7670:49:1", + "src": "7766:49:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 507, + "id": 1988, "nodeType": "EmitStatement", - "src": "7665:54:1" + "src": "7761:54:5" }, { "expression": { "argumentTypes": null, - "id": 511, + "id": 1992, "isConstant": false, "isLValue": false, "isPure": false, @@ -22141,31 +22765,31 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "7727:25:1", + "src": "7823:25:5", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 508, + "id": 1989, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "7734:9:1", + "referencedDeclaration": 1587, + "src": "7830:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 510, + "id": 1991, "indexExpression": { "argumentTypes": null, - "id": 509, + "id": 1990, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "7744:7:1", + "referencedDeclaration": 1952, + "src": "7840:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22176,9 +22800,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "7734:18:1", + "src": "7830:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, @@ -22187,9 +22811,9 @@ "typeString": "tuple()" } }, - "id": 512, + "id": 1993, "nodeType": "ExpressionStatement", - "src": "7727:25:1" + "src": "7823:25:5" }, { "expression": { @@ -22200,12 +22824,12 @@ "arguments": [ { "argumentTypes": null, - "id": 516, + "id": 1997, "name": "propOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 481, - "src": "7783:9:1", + "referencedDeclaration": 1962, + "src": "7879:9:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22213,12 +22837,12 @@ }, { "argumentTypes": null, - "id": 517, + "id": 1998, "name": "propDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 486, - "src": "7794:11:1", + "referencedDeclaration": 1967, + "src": "7890:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22238,32 +22862,32 @@ ], "expression": { "argumentTypes": null, - "id": 514, + "id": 1995, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "7768:5:1", + "referencedDeclaration": 1589, + "src": "7864:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 515, + "id": 1996, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "7768:14:1", + "referencedDeclaration": 431, + "src": "7864:14:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 518, + "id": 1999, "isConstant": false, "isLValue": false, "isPure": false, @@ -22271,7 +22895,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7768:38:1", + "src": "7864:38:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22285,21 +22909,21 @@ "typeString": "bool" } ], - "id": 513, + "id": 1994, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "7760:7:1", + "referencedDeclaration": 3705, + "src": "7856:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 519, + "id": 2000, "isConstant": false, "isLValue": false, "isPure": false, @@ -22307,15 +22931,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7760:47:1", + "src": "7856:47:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 520, + "id": 2001, "nodeType": "ExpressionStatement", - "src": "7760:47:1" + "src": "7856:47:5" } ] } @@ -22330,7 +22954,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 564, + "id": 2045, "isConstant": false, "isLValue": false, "isPure": false, @@ -22341,14 +22965,14 @@ { "argumentTypes": null, "hexValue": "64697370656e736174696f6e506374", - "id": 561, + "id": 2042, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8376:17:1", + "src": "8472:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_a44475ce52a893bc7cadba79a6351960ca7e12219e3b7f3a04da4d29c39864e4", @@ -22364,18 +22988,18 @@ "typeString": "literal_string \"dispensationPct\"" } ], - "id": 560, + "id": 2041, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "8372:3:1", + "referencedDeclaration": 2349, + "src": "8468:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 562, + "id": 2043, "isConstant": false, "isLValue": false, "isPure": false, @@ -22383,7 +23007,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8372:22:1", + "src": "8468:22:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22394,14 +23018,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "313030", - "id": 563, + "id": 2044, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8398:3:1", + "src": "8494:3:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -22409,7 +23033,7 @@ }, "value": "100" }, - "src": "8372:29:1", + "src": "8468:29:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22423,18 +23047,18 @@ "typeString": "bool" } ], - "id": 559, + "id": 2040, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3881, - "src": "8365:6:1", + "referencedDeclaration": 3691, + "src": "8461:6:5", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 565, + "id": 2046, "isConstant": false, "isLValue": false, "isPure": false, @@ -22442,15 +23066,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8365:37:1", + "src": "8461:37:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 566, + "id": 2047, "nodeType": "ExpressionStatement", - "src": "8365:37:1" + "src": "8461:37:5" }, { "expression": { @@ -22462,7 +23086,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 572, + "id": 2053, "isConstant": false, "isLValue": false, "isPure": false, @@ -22473,14 +23097,14 @@ { "argumentTypes": null, "hexValue": "7044697370656e736174696f6e506374", - "id": 569, + "id": 2050, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8419:18:1", + "src": "8515:18:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_05a3daf44f91da292c219c05dc954c342940b8aa851b594c6aaec71e37d44b79", @@ -22496,18 +23120,18 @@ "typeString": "literal_string \"pDispensationPct\"" } ], - "id": 568, + "id": 2049, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "8415:3:1", + "referencedDeclaration": 2349, + "src": "8511:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 570, + "id": 2051, "isConstant": false, "isLValue": false, "isPure": false, @@ -22515,7 +23139,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8415:23:1", + "src": "8511:23:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22526,14 +23150,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "313030", - "id": 571, + "id": 2052, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "8442:3:1", + "src": "8538:3:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -22541,7 +23165,7 @@ }, "value": "100" }, - "src": "8415:30:1", + "src": "8511:30:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22555,18 +23179,18 @@ "typeString": "bool" } ], - "id": 567, + "id": 2048, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3881, - "src": "8408:6:1", + "referencedDeclaration": 3691, + "src": "8504:6:5", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 573, + "id": 2054, "isConstant": false, "isLValue": false, "isPure": false, @@ -22574,15 +23198,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8408:38:1", + "src": "8504:38:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 574, + "id": 2055, "nodeType": "ExpressionStatement", - "src": "8408:38:1" + "src": "8504:38:5" }, { "expression": { @@ -22590,12 +23214,12 @@ "arguments": [ { "argumentTypes": null, - "id": 593, + "id": 2074, "name": "PROCESSBY", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 128, - "src": "8648:9:1", + "referencedDeclaration": 1594, + "src": "8744:9:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22618,14 +23242,14 @@ { "argumentTypes": null, "hexValue": "7052657665616c53746167654c656e", - "id": 589, + "id": 2070, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8617:17:1", + "src": "8713:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_fb97b9af270fc6f948089d10e64865cacad847ebc2ed8f2c10065db2f3593fa5", @@ -22641,18 +23265,18 @@ "typeString": "literal_string \"pRevealStageLen\"" } ], - "id": 588, + "id": 2069, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "8613:3:1", + "referencedDeclaration": 2349, + "src": "8709:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 590, + "id": 2071, "isConstant": false, "isLValue": false, "isPure": false, @@ -22660,7 +23284,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8613:22:1", + "src": "8709:22:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22683,14 +23307,14 @@ { "argumentTypes": null, "hexValue": "70436f6d6d697453746167654c656e", - "id": 584, + "id": 2065, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8582:17:1", + "src": "8678:17:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_8ba0bfd13d315213bdff16c58a613af32380ba99f9d780656d5dec1267165fb1", @@ -22706,18 +23330,18 @@ "typeString": "literal_string \"pCommitStageLen\"" } ], - "id": 583, + "id": 2064, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "8578:3:1", + "referencedDeclaration": 2349, + "src": "8674:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 585, + "id": 2066, "isConstant": false, "isLValue": false, "isPure": false, @@ -22725,7 +23349,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8578:22:1", + "src": "8674:22:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22748,14 +23372,14 @@ { "argumentTypes": null, "hexValue": "704170706c7953746167654c656e", - "id": 579, + "id": 2060, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "8548:16:1", + "src": "8644:16:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_5b5170ca3f1920aed95b983e4a145c32a025f4a29a71df82746241afd472a9d8", @@ -22771,18 +23395,18 @@ "typeString": "literal_string \"pApplyStageLen\"" } ], - "id": 578, + "id": 2059, "name": "get", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 865, - "src": "8544:3:1", + "referencedDeclaration": 2349, + "src": "8640:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view returns (uint256)" } }, - "id": 580, + "id": 2061, "isConstant": false, "isLValue": false, "isPure": false, @@ -22790,7 +23414,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8544:21:1", + "src": "8640:21:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22806,32 +23430,32 @@ ], "expression": { "argumentTypes": null, - "id": 575, + "id": 2056, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "8536:3:1", + "referencedDeclaration": 3704, + "src": "8632:3:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 577, + "id": 2058, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "8536:7:1", + "referencedDeclaration": 3686, + "src": "8632:7:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 581, + "id": 2062, "isConstant": false, "isLValue": false, "isPure": false, @@ -22839,27 +23463,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8536:30:1", + "src": "8632:30:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 582, + "id": 2063, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "8536:41:1", + "referencedDeclaration": 3686, + "src": "8632:41:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 586, + "id": 2067, "isConstant": false, "isLValue": false, "isPure": false, @@ -22867,27 +23491,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8536:65:1", + "src": "8632:65:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 587, + "id": 2068, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "8536:76:1", + "referencedDeclaration": 3686, + "src": "8632:76:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 591, + "id": 2072, "isConstant": false, "isLValue": false, "isPure": false, @@ -22895,27 +23519,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8536:100:1", + "src": "8632:100:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 592, + "id": 2073, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "8536:111:1", + "referencedDeclaration": 3686, + "src": "8632:111:5", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 594, + "id": 2075, "isConstant": false, "isLValue": false, "isPure": false, @@ -22923,20 +23547,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8536:122:1", + "src": "8632:122:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 595, + "id": 2076, "nodeType": "ExpressionStatement", - "src": "8536:122:1" + "src": "8632:122:5" }, { "expression": { "argumentTypes": null, - "id": 599, + "id": 2080, "isConstant": false, "isLValue": false, "isPure": false, @@ -22944,31 +23568,31 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "8665:25:1", + "src": "8761:25:5", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 596, + "id": 2077, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "8672:9:1", + "referencedDeclaration": 1587, + "src": "8768:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 598, + "id": 2079, "indexExpression": { "argumentTypes": null, - "id": 597, + "id": 2078, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 471, - "src": "8682:7:1", + "referencedDeclaration": 1952, + "src": "8778:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -22979,9 +23603,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "8672:18:1", + "src": "8768:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, @@ -22990,14 +23614,14 @@ "typeString": "tuple()" } }, - "id": 600, + "id": 2081, "nodeType": "ExpressionStatement", - "src": "8665:25:1" + "src": "8761:25:5" } ] }, "documentation": "@notice for the provided proposal ID, set it, resolve its challenge, or delete it depending on whether it can be set, has a challenge which can be resolved, or if its \"process by\" date has passed\n@param _propID the proposal ID to make a determination and state transition for", - "id": 602, + "id": 2083, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -23005,16 +23629,16 @@ "name": "processProposal", "nodeType": "FunctionDefinition", "parameters": { - "id": 472, + "id": 1953, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 471, + "id": 1952, "name": "_propID", "nodeType": "VariableDeclaration", - "scope": 602, - "src": "7112:15:1", + "scope": 2083, + "src": "7208:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23022,10 +23646,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 470, + "id": 1951, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "7112:7:1", + "src": "7208:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -23035,26 +23659,26 @@ "visibility": "internal" } ], - "src": "7111:17:1" + "src": "7207:17:5" }, "payable": false, "returnParameters": { - "id": 473, + "id": 1954, "nodeType": "ParameterList", "parameters": [], - "src": "7136:0:1" + "src": "7232:0:5" }, - "scope": 1003, - "src": "7087:1608:1", + "scope": 2490, + "src": "7183:1608:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 689, + "id": 2170, "nodeType": "Block", - "src": "8979:844:1", + "src": "9075:844:5", "statements": [ { "expression": { @@ -23066,7 +23690,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 618, + "id": 2099, "isConstant": false, "isLValue": false, "isPure": false, @@ -23079,26 +23703,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 610, + "id": 2091, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "9086:10:1", + "referencedDeclaration": 1583, + "src": "9182:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 612, + "id": 2093, "indexExpression": { "argumentTypes": null, - "id": 611, + "id": 2092, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9097:12:1", + "referencedDeclaration": 2085, + "src": "9193:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23109,43 +23733,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9086:24:1", + "src": "9182:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 613, + "id": 2094, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokenClaims", "nodeType": "MemberAccess", - "referencedDeclaration": 108, - "src": "9086:36:1", + "referencedDeclaration": 1574, + "src": "9182:36:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 616, + "id": 2097, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 614, + "id": 2095, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9123:3:1", + "referencedDeclaration": 3702, + "src": "9219:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 615, + "id": 2096, "isConstant": false, "isLValue": false, "isPure": false, @@ -23153,7 +23777,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9123:10:1", + "src": "9219:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23164,7 +23788,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9086:48:1", + "src": "9182:48:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23175,14 +23799,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 617, + "id": 2098, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9138:5:1", + "src": "9234:5:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -23190,7 +23814,7 @@ }, "value": "false" }, - "src": "9086:57:1", + "src": "9182:57:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23204,21 +23828,21 @@ "typeString": "bool" } ], - "id": 609, + "id": 2090, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "9078:7:1", + "referencedDeclaration": 3705, + "src": "9174:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 619, + "id": 2100, "isConstant": false, "isLValue": false, "isPure": false, @@ -23226,15 +23850,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9078:66:1", + "src": "9174:66:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 620, + "id": 2101, "nodeType": "ExpressionStatement", - "src": "9078:66:1" + "src": "9174:66:5" }, { "expression": { @@ -23246,7 +23870,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 627, + "id": 2108, "isConstant": false, "isLValue": false, "isPure": false, @@ -23257,26 +23881,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 622, + "id": 2103, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "9158:10:1", + "referencedDeclaration": 1583, + "src": "9254:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 624, + "id": 2105, "indexExpression": { "argumentTypes": null, - "id": 623, + "id": 2104, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9169:12:1", + "referencedDeclaration": 2085, + "src": "9265:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23287,21 +23911,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9158:24:1", + "src": "9254:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 625, + "id": 2106, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 100, - "src": "9158:33:1", + "referencedDeclaration": 1566, + "src": "9254:33:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23312,14 +23936,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "74727565", - "id": 626, + "id": 2107, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9195:4:1", + "src": "9291:4:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -23327,7 +23951,7 @@ }, "value": "true" }, - "src": "9158:41:1", + "src": "9254:41:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23341,21 +23965,21 @@ "typeString": "bool" } ], - "id": 621, + "id": 2102, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "9150:7:1", + "referencedDeclaration": 3705, + "src": "9246:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 628, + "id": 2109, "isConstant": false, "isLValue": false, "isPure": false, @@ -23363,28 +23987,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9150:50:1", + "src": "9246:50:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 629, + "id": 2110, "nodeType": "ExpressionStatement", - "src": "9150:50:1" + "src": "9246:50:5" }, { "assignments": [ - 631 + 2112 ], "declarations": [ { "constant": false, - "id": 631, + "id": 2112, "name": "voterTokens", "nodeType": "VariableDeclaration", - "scope": 690, - "src": "9207:16:1", + "scope": 2171, + "src": "9303:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23392,10 +24016,10 @@ "typeString": "uint256" }, "typeName": { - "id": 630, + "id": 2111, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9207:4:1", + "src": "9303:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23405,7 +24029,7 @@ "visibility": "internal" } ], - "id": 639, + "id": 2120, "initialValue": { "argumentTypes": null, "arguments": [ @@ -23413,18 +24037,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 634, + "id": 2115, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9253:3:1", + "referencedDeclaration": 3702, + "src": "9349:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 635, + "id": 2116, "isConstant": false, "isLValue": false, "isPure": false, @@ -23432,7 +24056,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9253:10:1", + "src": "9349:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23440,12 +24064,12 @@ }, { "argumentTypes": null, - "id": 636, + "id": 2117, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9265:12:1", + "referencedDeclaration": 2085, + "src": "9361:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23453,12 +24077,12 @@ }, { "argumentTypes": null, - "id": 637, + "id": 2118, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 606, - "src": "9279:5:1", + "referencedDeclaration": 2087, + "src": "9375:5:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23482,32 +24106,32 @@ ], "expression": { "argumentTypes": null, - "id": 632, + "id": 2113, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "9226:6:1", + "referencedDeclaration": 1591, + "src": "9322:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 633, + "id": 2114, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getNumPassingTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 3065, - "src": "9226:26:1", + "referencedDeclaration": 1045, + "src": "9322:26:5", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256,uint256) view external returns (uint256)" } }, - "id": 638, + "id": 2119, "isConstant": false, "isLValue": false, "isPure": false, @@ -23515,27 +24139,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9226:59:1", + "src": "9322:59:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9207:78:1" + "src": "9303:78:5" }, { "assignments": [ - 641 + 2122 ], "declarations": [ { "constant": false, - "id": 641, + "id": 2122, "name": "reward", "nodeType": "VariableDeclaration", - "scope": 690, - "src": "9291:11:1", + "scope": 2171, + "src": "9387:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23543,10 +24167,10 @@ "typeString": "uint256" }, "typeName": { - "id": 640, + "id": 2121, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9291:4:1", + "src": "9387:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23556,7 +24180,7 @@ "visibility": "internal" } ], - "id": 648, + "id": 2129, "initialValue": { "argumentTypes": null, "arguments": [ @@ -23564,18 +24188,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 643, + "id": 2124, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9317:3:1", + "referencedDeclaration": 3702, + "src": "9413:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 644, + "id": 2125, "isConstant": false, "isLValue": false, "isPure": false, @@ -23583,7 +24207,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9317:10:1", + "src": "9413:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23591,12 +24215,12 @@ }, { "argumentTypes": null, - "id": 645, + "id": 2126, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9329:12:1", + "referencedDeclaration": 2085, + "src": "9425:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23604,12 +24228,12 @@ }, { "argumentTypes": null, - "id": 646, + "id": 2127, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 606, - "src": "9343:5:1", + "referencedDeclaration": 2087, + "src": "9439:5:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23631,18 +24255,18 @@ "typeString": "uint256" } ], - "id": 642, + "id": 2123, "name": "voterReward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 732, - "src": "9305:11:1", + "referencedDeclaration": 2213, + "src": "9401:11:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256,uint256) view returns (uint256)" } }, - "id": 647, + "id": 2128, "isConstant": false, "isLValue": false, "isPure": false, @@ -23650,19 +24274,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9305:44:1", + "src": "9401:44:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9291:58:1" + "src": "9387:58:5" }, { "expression": { "argumentTypes": null, - "id": 654, + "id": 2135, "isConstant": false, "isLValue": false, "isPure": false, @@ -23673,26 +24297,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 649, + "id": 2130, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "9494:10:1", + "referencedDeclaration": 1583, + "src": "9590:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 651, + "id": 2132, "indexExpression": { "argumentTypes": null, - "id": 650, + "id": 2131, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9505:12:1", + "referencedDeclaration": 2085, + "src": "9601:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23703,21 +24327,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9494:24:1", + "src": "9590:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 652, + "id": 2133, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "winningTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 104, - "src": "9494:38:1", + "referencedDeclaration": 1570, + "src": "9590:38:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23727,31 +24351,31 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 653, + "id": 2134, "name": "voterTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 631, - "src": "9536:11:1", + "referencedDeclaration": 2112, + "src": "9632:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9494:53:1", + "src": "9590:53:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 655, + "id": 2136, "nodeType": "ExpressionStatement", - "src": "9494:53:1" + "src": "9590:53:5" }, { "expression": { "argumentTypes": null, - "id": 661, + "id": 2142, "isConstant": false, "isLValue": false, "isPure": false, @@ -23762,26 +24386,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 656, + "id": 2137, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "9553:10:1", + "referencedDeclaration": 1583, + "src": "9649:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 658, + "id": 2139, "indexExpression": { "argumentTypes": null, - "id": 657, + "id": 2138, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9564:12:1", + "referencedDeclaration": 2085, + "src": "9660:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23792,21 +24416,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9553:24:1", + "src": "9649:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 659, + "id": 2140, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 96, - "src": "9553:35:1", + "referencedDeclaration": 1562, + "src": "9649:35:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23816,31 +24440,31 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 660, + "id": 2141, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 641, - "src": "9592:6:1", + "referencedDeclaration": 2122, + "src": "9688:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9553:45:1", + "src": "9649:45:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 662, + "id": 2143, "nodeType": "ExpressionStatement", - "src": "9553:45:1" + "src": "9649:45:5" }, { "expression": { "argumentTypes": null, - "id": 671, + "id": 2152, "isConstant": false, "isLValue": false, "isPure": false, @@ -23853,26 +24477,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 663, + "id": 2144, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "9654:10:1", + "referencedDeclaration": 1583, + "src": "9750:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 665, + "id": 2146, "indexExpression": { "argumentTypes": null, - "id": 664, + "id": 2145, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9665:12:1", + "referencedDeclaration": 2085, + "src": "9761:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23883,43 +24507,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9654:24:1", + "src": "9750:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 666, + "id": 2147, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokenClaims", "nodeType": "MemberAccess", - "referencedDeclaration": 108, - "src": "9654:36:1", + "referencedDeclaration": 1574, + "src": "9750:36:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 669, + "id": 2150, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 667, + "id": 2148, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9691:3:1", + "referencedDeclaration": 3702, + "src": "9787:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 668, + "id": 2149, "isConstant": false, "isLValue": false, "isPure": false, @@ -23927,7 +24551,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9691:10:1", + "src": "9787:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23938,7 +24562,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "9654:48:1", + "src": "9750:48:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23949,14 +24573,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 670, + "id": 2151, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9705:4:1", + "src": "9801:4:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -23964,15 +24588,15 @@ }, "value": "true" }, - "src": "9654:55:1", + "src": "9750:55:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 672, + "id": 2153, "nodeType": "ExpressionStatement", - "src": "9654:55:1" + "src": "9750:55:5" }, { "eventCall": { @@ -23980,12 +24604,12 @@ "arguments": [ { "argumentTypes": null, - "id": 674, + "id": 2155, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 604, - "src": "9736:12:1", + "referencedDeclaration": 2085, + "src": "9832:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23993,12 +24617,12 @@ }, { "argumentTypes": null, - "id": 675, + "id": 2156, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 641, - "src": "9750:6:1", + "referencedDeclaration": 2122, + "src": "9846:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24008,18 +24632,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 676, + "id": 2157, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9758:3:1", + "referencedDeclaration": 3702, + "src": "9854:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 677, + "id": 2158, "isConstant": false, "isLValue": false, "isPure": false, @@ -24027,7 +24651,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9758:10:1", + "src": "9854:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24049,18 +24673,18 @@ "typeString": "address" } ], - "id": 673, + "id": 2154, "name": "_RewardClaimed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 76, - "src": "9721:14:1", + "referencedDeclaration": 1542, + "src": "9817:14:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,uint256,address)" } }, - "id": 678, + "id": 2159, "isConstant": false, "isLValue": false, "isPure": false, @@ -24068,15 +24692,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9721:48:1", + "src": "9817:48:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 679, + "id": 2160, "nodeType": "EmitStatement", - "src": "9716:53:1" + "src": "9812:53:5" }, { "expression": { @@ -24089,18 +24713,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 683, + "id": 2164, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9798:3:1", + "referencedDeclaration": 3702, + "src": "9894:3:5", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 684, + "id": 2165, "isConstant": false, "isLValue": false, "isPure": false, @@ -24108,7 +24732,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9798:10:1", + "src": "9894:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24116,12 +24740,12 @@ }, { "argumentTypes": null, - "id": 685, + "id": 2166, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 641, - "src": "9810:6:1", + "referencedDeclaration": 2122, + "src": "9906:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24141,32 +24765,32 @@ ], "expression": { "argumentTypes": null, - "id": 681, + "id": 2162, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "9783:5:1", + "referencedDeclaration": 1589, + "src": "9879:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 682, + "id": 2163, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "9783:14:1", + "referencedDeclaration": 431, + "src": "9879:14:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 686, + "id": 2167, "isConstant": false, "isLValue": false, "isPure": false, @@ -24174,7 +24798,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9783:34:1", + "src": "9879:34:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24188,21 +24812,21 @@ "typeString": "bool" } ], - "id": 680, + "id": 2161, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "9775:7:1", + "referencedDeclaration": 3705, + "src": "9871:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 687, + "id": 2168, "isConstant": false, "isLValue": false, "isPure": false, @@ -24210,20 +24834,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9775:43:1", + "src": "9871:43:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 688, + "id": 2169, "nodeType": "ExpressionStatement", - "src": "9775:43:1" + "src": "9871:43:5" } ] }, "documentation": "@notice claim the tokens owed for the msg.sender in the provided challenge\n@param _challengeID the challenge ID to claim tokens for\n@param _salt the salt used to vote in the challenge being withdrawn for", - "id": 690, + "id": 2171, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -24231,16 +24855,16 @@ "name": "claimReward", "nodeType": "FunctionDefinition", "parameters": { - "id": 607, + "id": 2088, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 604, + "id": 2085, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 690, - "src": "8941:17:1", + "scope": 2171, + "src": "9037:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24248,10 +24872,10 @@ "typeString": "uint256" }, "typeName": { - "id": 603, + "id": 2084, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8941:4:1", + "src": "9037:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24262,11 +24886,11 @@ }, { "constant": false, - "id": 606, + "id": 2087, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 690, - "src": "8960:10:1", + "scope": 2171, + "src": "9056:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24274,10 +24898,10 @@ "typeString": "uint256" }, "typeName": { - "id": 605, + "id": 2086, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8960:4:1", + "src": "9056:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24287,39 +24911,39 @@ "visibility": "internal" } ], - "src": "8940:31:1" + "src": "9036:31:5" }, "payable": false, "returnParameters": { - "id": 608, + "id": 2089, "nodeType": "ParameterList", "parameters": [], - "src": "8979:0:1" + "src": "9075:0:5" }, - "scope": 1003, - "src": "8920:903:1", + "scope": 2490, + "src": "9016:903:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 731, + "id": 2212, "nodeType": "Block", - "src": "10378:264:1", + "src": "10474:264:5", "statements": [ { "assignments": [ - 702 + 2183 ], "declarations": [ { "constant": false, - "id": 702, + "id": 2183, "name": "winningTokens", "nodeType": "VariableDeclaration", - "scope": 732, - "src": "10384:18:1", + "scope": 2213, + "src": "10480:18:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24327,10 +24951,10 @@ "typeString": "uint256" }, "typeName": { - "id": 701, + "id": 2182, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10384:4:1", + "src": "10480:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24340,33 +24964,33 @@ "visibility": "internal" } ], - "id": 707, + "id": 2188, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 703, + "id": 2184, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "10405:10:1", + "referencedDeclaration": 1583, + "src": "10501:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 705, + "id": 2186, "indexExpression": { "argumentTypes": null, - "id": 704, + "id": 2185, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 694, - "src": "10416:12:1", + "referencedDeclaration": 2175, + "src": "10512:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24377,41 +25001,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10405:24:1", + "src": "10501:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 706, + "id": 2187, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "winningTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 104, - "src": "10405:38:1", + "referencedDeclaration": 1570, + "src": "10501:38:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "10384:59:1" + "src": "10480:59:5" }, { "assignments": [ - 709 + 2190 ], "declarations": [ { "constant": false, - "id": 709, + "id": 2190, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 732, - "src": "10449:15:1", + "scope": 2213, + "src": "10545:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24419,10 +25043,10 @@ "typeString": "uint256" }, "typeName": { - "id": 708, + "id": 2189, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10449:4:1", + "src": "10545:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24432,33 +25056,33 @@ "visibility": "internal" } ], - "id": 714, + "id": 2195, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 710, + "id": 2191, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "10467:10:1", + "referencedDeclaration": 1583, + "src": "10563:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 712, + "id": 2193, "indexExpression": { "argumentTypes": null, - "id": 711, + "id": 2192, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 694, - "src": "10478:12:1", + "referencedDeclaration": 2175, + "src": "10574:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24469,41 +25093,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10467:24:1", + "src": "10563:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 713, + "id": 2194, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 96, - "src": "10467:35:1", + "referencedDeclaration": 1562, + "src": "10563:35:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "10449:53:1" + "src": "10545:53:5" }, { "assignments": [ - 716 + 2197 ], "declarations": [ { "constant": false, - "id": 716, + "id": 2197, "name": "voterTokens", "nodeType": "VariableDeclaration", - "scope": 732, - "src": "10508:16:1", + "scope": 2213, + "src": "10604:16:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24511,10 +25135,10 @@ "typeString": "uint256" }, "typeName": { - "id": 715, + "id": 2196, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10508:4:1", + "src": "10604:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24524,18 +25148,18 @@ "visibility": "internal" } ], - "id": 723, + "id": 2204, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 719, + "id": 2200, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 692, - "src": "10554:6:1", + "referencedDeclaration": 2173, + "src": "10650:6:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24543,12 +25167,12 @@ }, { "argumentTypes": null, - "id": 720, + "id": 2201, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 694, - "src": "10562:12:1", + "referencedDeclaration": 2175, + "src": "10658:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24556,12 +25180,12 @@ }, { "argumentTypes": null, - "id": 721, + "id": 2202, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 696, - "src": "10576:5:1", + "referencedDeclaration": 2177, + "src": "10672:5:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24585,32 +25209,32 @@ ], "expression": { "argumentTypes": null, - "id": 717, + "id": 2198, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "10527:6:1", + "referencedDeclaration": 1591, + "src": "10623:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 718, + "id": 2199, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getNumPassingTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 3065, - "src": "10527:26:1", + "referencedDeclaration": 1045, + "src": "10623:26:5", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256,uint256) view external returns (uint256)" } }, - "id": 722, + "id": 2203, "isConstant": false, "isLValue": false, "isPure": false, @@ -24618,14 +25242,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10527:55:1", + "src": "10623:55:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "10508:74:1" + "src": "10604:74:5" }, { "expression": { @@ -24634,7 +25258,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 729, + "id": 2210, "isConstant": false, "isLValue": false, "isPure": false, @@ -24648,19 +25272,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 726, + "id": 2207, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 724, + "id": 2205, "name": "voterTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 716, - "src": "10596:11:1", + "referencedDeclaration": 2197, + "src": "10692:11:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24670,32 +25294,32 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 725, + "id": 2206, "name": "rewardPool", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 709, - "src": "10610:10:1", + "referencedDeclaration": 2190, + "src": "10706:10:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10596:24:1", + "src": "10692:24:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 727, + "id": 2208, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "10595:26:1", + "src": "10691:26:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24705,32 +25329,32 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 728, + "id": 2209, "name": "winningTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 702, - "src": "10624:13:1", + "referencedDeclaration": 2183, + "src": "10720:13:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10595:42:1", + "src": "10691:42:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 700, - "id": 730, + "functionReturnParameters": 2181, + "id": 2211, "nodeType": "Return", - "src": "10588:49:1" + "src": "10684:49:5" } ] }, "documentation": "@dev Calculates the provided voter's token reward for the given poll.\n@param _voter The address of the voter whose reward balance is to be returned\n@param _challengeID The ID of the challenge the voter's reward is being calculated for\n@param _salt The salt of the voter's commit hash in the given poll\n@return The uint indicating the voter's reward", - "id": 732, + "id": 2213, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -24738,16 +25362,16 @@ "name": "voterReward", "nodeType": "FunctionDefinition", "parameters": { - "id": 697, + "id": 2178, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 692, + "id": 2173, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 732, - "src": "10300:14:1", + "scope": 2213, + "src": "10396:14:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24755,10 +25379,10 @@ "typeString": "address" }, "typeName": { - "id": 691, + "id": 2172, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10300:7:1", + "src": "10396:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24769,11 +25393,11 @@ }, { "constant": false, - "id": 694, + "id": 2175, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 732, - "src": "10316:17:1", + "scope": 2213, + "src": "10412:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24781,10 +25405,10 @@ "typeString": "uint256" }, "typeName": { - "id": 693, + "id": 2174, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10316:4:1", + "src": "10412:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24795,11 +25419,11 @@ }, { "constant": false, - "id": 696, + "id": 2177, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 732, - "src": "10335:10:1", + "scope": 2213, + "src": "10431:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24807,10 +25431,10 @@ "typeString": "uint256" }, "typeName": { - "id": 695, + "id": 2176, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10335:4:1", + "src": "10431:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24820,20 +25444,20 @@ "visibility": "internal" } ], - "src": "10299:47:1" + "src": "10395:47:5" }, "payable": false, "returnParameters": { - "id": 700, + "id": 2181, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 699, + "id": 2180, "name": "", "nodeType": "VariableDeclaration", - "scope": 732, - "src": "10370:4:1", + "scope": 2213, + "src": "10466:4:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24841,10 +25465,10 @@ "typeString": "uint256" }, "typeName": { - "id": 698, + "id": 2179, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10370:4:1", + "src": "10466:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24854,47 +25478,47 @@ "visibility": "internal" } ], - "src": "10369:6:1" + "src": "10465:6:5" }, - "scope": 1003, - "src": "10279:363:1", + "scope": 2490, + "src": "10375:363:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 761, + "id": 2242, "nodeType": "Block", - "src": "10921:142:1", + "src": "11017:142:5", "statements": [ { "assignments": [ - 740 + 2221 ], "declarations": [ { "constant": false, - "id": 740, + "id": 2221, "name": "prop", "nodeType": "VariableDeclaration", - "scope": 762, - "src": "10927:25:1", + "scope": 2243, + "src": "11023:25:5", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal" }, "typeName": { "contractScope": null, - "id": 739, + "id": 2220, "name": "ParamProposal", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 94, - "src": "10927:13:1", + "referencedDeclaration": 1560, + "src": "11023:13:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal" } }, @@ -24902,31 +25526,31 @@ "visibility": "internal" } ], - "id": 744, + "id": 2225, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 741, + "id": 2222, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "10955:9:1", + "referencedDeclaration": 1587, + "src": "11051:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 743, + "id": 2224, "indexExpression": { "argumentTypes": null, - "id": 742, + "id": 2223, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 734, - "src": "10965:7:1", + "referencedDeclaration": 2215, + "src": "11061:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -24937,14 +25561,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10955:18:1", + "src": "11051:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "10927:46:1" + "src": "11023:46:5" }, { "expression": { @@ -24956,7 +25580,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 758, + "id": 2239, "isConstant": false, "isLValue": false, "isPure": false, @@ -24967,7 +25591,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 753, + "id": 2234, "isConstant": false, "isLValue": false, "isPure": false, @@ -24978,19 +25602,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 748, + "id": 2229, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 745, + "id": 2226, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "10988:3:1", + "referencedDeclaration": 3704, + "src": "11084:3:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25002,32 +25626,32 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 746, + "id": 2227, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "10994:4:1", + "referencedDeclaration": 2221, + "src": "11090:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 747, + "id": 2228, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "appExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "10994:14:1", + "referencedDeclaration": 1547, + "src": "11090:14:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10988:20:1", + "src": "11084:20:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25041,19 +25665,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 752, + "id": 2233, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 749, + "id": 2230, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "11012:3:1", + "referencedDeclaration": 3704, + "src": "11108:3:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25065,38 +25689,38 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 750, + "id": 2231, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "11018:4:1", + "referencedDeclaration": 2221, + "src": "11114:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 751, + "id": 2232, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "processBy", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "11018:14:1", + "referencedDeclaration": 1557, + "src": "11114:14:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11012:20:1", + "src": "11108:20:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "10988:44:1", + "src": "11084:44:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25110,7 +25734,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 757, + "id": 2238, "isConstant": false, "isLValue": false, "isPure": false, @@ -25119,26 +25743,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 754, + "id": 2235, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 740, - "src": "11036:4:1", + "referencedDeclaration": 2221, + "src": "11132:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 755, + "id": 2236, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11036:16:1", + "referencedDeclaration": 1549, + "src": "11132:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25149,14 +25773,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 756, + "id": 2237, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11056:1:1", + "src": "11152:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -25164,41 +25788,41 @@ }, "value": "0" }, - "src": "11036:21:1", + "src": "11132:21:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "10988:69:1", + "src": "11084:69:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 759, + "id": 2240, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "10987:71:1", + "src": "11083:71:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 738, - "id": 760, + "functionReturnParameters": 2219, + "id": 2241, "nodeType": "Return", - "src": "10980:78:1" + "src": "11076:78:5" } ] }, "documentation": "@notice Determines whether a proposal passed its application stage without a challenge\n@param _propID The proposal ID for which to determine whether its application stage passed without a challenge", - "id": 762, + "id": 2243, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -25206,16 +25830,16 @@ "name": "canBeSet", "nodeType": "FunctionDefinition", "parameters": { - "id": 735, + "id": 2216, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 734, + "id": 2215, "name": "_propID", "nodeType": "VariableDeclaration", - "scope": 762, - "src": "10877:15:1", + "scope": 2243, + "src": "10973:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25223,10 +25847,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 733, + "id": 2214, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "10877:7:1", + "src": "10973:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25236,20 +25860,20 @@ "visibility": "internal" } ], - "src": "10876:17:1" + "src": "10972:17:5" }, "payable": false, "returnParameters": { - "id": 738, + "id": 2219, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 737, + "id": 2218, "name": "", "nodeType": "VariableDeclaration", - "scope": 762, - "src": "10915:4:1", + "scope": 2243, + "src": "11011:4:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25257,10 +25881,10 @@ "typeString": "bool" }, "typeName": { - "id": 736, + "id": 2217, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "10915:4:1", + "src": "11011:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25270,19 +25894,19 @@ "visibility": "internal" } ], - "src": "10914:6:1" + "src": "11010:6:5" }, - "scope": 1003, - "src": "10859:204:1", + "scope": 2490, + "src": "10955:204:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 776, + "id": 2257, "nodeType": "Block", - "src": "11287:50:1", + "src": "11383:50:5", "statements": [ { "expression": { @@ -25291,7 +25915,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 774, + "id": 2255, "isConstant": false, "isLValue": false, "isPure": false, @@ -25302,26 +25926,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 769, + "id": 2250, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "11300:9:1", + "referencedDeclaration": 1587, + "src": "11396:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 771, + "id": 2252, "indexExpression": { "argumentTypes": null, - "id": 770, + "id": 2251, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 764, - "src": "11310:7:1", + "referencedDeclaration": 2245, + "src": "11406:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25332,21 +25956,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11300:18:1", + "src": "11396:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, - "id": 772, + "id": 2253, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "processBy", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "11300:28:1", + "referencedDeclaration": 1557, + "src": "11396:28:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25357,14 +25981,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 773, + "id": 2254, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11331:1:1", + "src": "11427:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -25372,21 +25996,21 @@ }, "value": "0" }, - "src": "11300:32:1", + "src": "11396:32:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 768, - "id": 775, + "functionReturnParameters": 2249, + "id": 2256, "nodeType": "Return", - "src": "11293:39:1" + "src": "11389:39:5" } ] }, "documentation": "@notice Determines whether a proposal exists for the provided proposal ID\n@param _propID The proposal ID whose existance is to be determined", - "id": 777, + "id": 2258, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -25394,16 +26018,16 @@ "name": "propExists", "nodeType": "FunctionDefinition", "parameters": { - "id": 765, + "id": 2246, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 764, + "id": 2245, "name": "_propID", "nodeType": "VariableDeclaration", - "scope": 777, - "src": "11243:15:1", + "scope": 2258, + "src": "11339:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25411,10 +26035,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 763, + "id": 2244, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "11243:7:1", + "src": "11339:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25424,20 +26048,20 @@ "visibility": "internal" } ], - "src": "11242:17:1" + "src": "11338:17:5" }, "payable": false, "returnParameters": { - "id": 768, + "id": 2249, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 767, + "id": 2248, "name": "", "nodeType": "VariableDeclaration", - "scope": 777, - "src": "11281:4:1", + "scope": 2258, + "src": "11377:4:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25445,10 +26069,10 @@ "typeString": "bool" }, "typeName": { - "id": 766, + "id": 2247, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "11281:4:1", + "src": "11377:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25458,47 +26082,47 @@ "visibility": "internal" } ], - "src": "11280:6:1" + "src": "11376:6:5" }, - "scope": 1003, - "src": "11223:114:1", + "scope": 2490, + "src": "11319:114:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 814, + "id": 2295, "nodeType": "Block", - "src": "11580:225:1", + "src": "11676:225:5", "statements": [ { "assignments": [ - 785 + 2266 ], "declarations": [ { "constant": false, - "id": 785, + "id": 2266, "name": "prop", "nodeType": "VariableDeclaration", - "scope": 815, - "src": "11586:25:1", + "scope": 2296, + "src": "11682:25:5", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal" }, "typeName": { "contractScope": null, - "id": 784, + "id": 2265, "name": "ParamProposal", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 94, - "src": "11586:13:1", + "referencedDeclaration": 1560, + "src": "11682:13:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal" } }, @@ -25506,31 +26130,31 @@ "visibility": "internal" } ], - "id": 789, + "id": 2270, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 786, + "id": 2267, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "11614:9:1", + "referencedDeclaration": 1587, + "src": "11710:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 788, + "id": 2269, "indexExpression": { "argumentTypes": null, - "id": 787, + "id": 2268, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 779, - "src": "11624:7:1", + "referencedDeclaration": 2260, + "src": "11720:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25541,42 +26165,42 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11614:18:1", + "src": "11710:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "11586:46:1" + "src": "11682:46:5" }, { "assignments": [ - 791 + 2272 ], "declarations": [ { "constant": false, - "id": 791, + "id": 2272, "name": "challenge", "nodeType": "VariableDeclaration", - "scope": 815, - "src": "11638:26:1", + "scope": 2296, + "src": "11734:26:5", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_memory_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_memory_ptr", "typeString": "struct Parameterizer.Challenge" }, "typeName": { "contractScope": null, - "id": 790, + "id": 2271, "name": "Challenge", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 109, - "src": "11638:9:1", + "referencedDeclaration": 1575, + "src": "11734:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge" } }, @@ -25584,47 +26208,47 @@ "visibility": "internal" } ], - "id": 796, + "id": 2277, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 792, + "id": 2273, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "11667:10:1", + "referencedDeclaration": 1583, + "src": "11763:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 795, + "id": 2276, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 793, + "id": 2274, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 785, - "src": "11678:4:1", + "referencedDeclaration": 2266, + "src": "11774:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 794, + "id": 2275, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11678:16:1", + "referencedDeclaration": 1549, + "src": "11774:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25635,14 +26259,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11667:28:1", + "src": "11763:28:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "11638:57:1" + "src": "11734:57:5" }, { "expression": { @@ -25654,7 +26278,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 811, + "id": 2292, "isConstant": false, "isLValue": false, "isPure": false, @@ -25665,7 +26289,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 805, + "id": 2286, "isConstant": false, "isLValue": false, "isPure": false, @@ -25676,7 +26300,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 800, + "id": 2281, "isConstant": false, "isLValue": false, "isPure": false, @@ -25685,26 +26309,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 797, + "id": 2278, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 785, - "src": "11710:4:1", + "referencedDeclaration": 2266, + "src": "11806:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 798, + "id": 2279, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11710:16:1", + "referencedDeclaration": 1549, + "src": "11806:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25715,14 +26339,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 799, + "id": 2280, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11729:1:1", + "src": "11825:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -25730,7 +26354,7 @@ }, "value": "0" }, - "src": "11710:20:1", + "src": "11806:20:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25744,7 +26368,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 804, + "id": 2285, "isConstant": false, "isLValue": false, "isPure": false, @@ -25753,26 +26377,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 801, + "id": 2282, "name": "challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 791, - "src": "11734:9:1", + "referencedDeclaration": 2272, + "src": "11830:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_memory_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_memory_ptr", "typeString": "struct Parameterizer.Challenge memory" } }, - "id": 802, + "id": 2283, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 100, - "src": "11734:18:1", + "referencedDeclaration": 1566, + "src": "11830:18:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25783,14 +26407,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 803, + "id": 2284, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "11756:5:1", + "src": "11852:5:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -25798,13 +26422,13 @@ }, "value": "false" }, - "src": "11734:27:1", + "src": "11830:27:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "11710:51:1", + "src": "11806:51:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25819,26 +26443,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 808, + "id": 2289, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 785, - "src": "11782:4:1", + "referencedDeclaration": 2266, + "src": "11878:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 809, + "id": 2290, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11782:16:1", + "referencedDeclaration": 1549, + "src": "11878:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25854,32 +26478,32 @@ ], "expression": { "argumentTypes": null, - "id": 806, + "id": 2287, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "11765:6:1", + "referencedDeclaration": 1591, + "src": "11861:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 807, + "id": 2288, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "pollEnded", "nodeType": "MemberAccess", - "referencedDeclaration": 3207, - "src": "11765:16:1", + "referencedDeclaration": 1187, + "src": "11861:16:5", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view external returns (bool)" } }, - "id": 810, + "id": 2291, "isConstant": false, "isLValue": false, "isPure": false, @@ -25887,41 +26511,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11765:34:1", + "src": "11861:34:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "11710:89:1", + "src": "11806:89:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 812, + "id": 2293, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11709:91:1", + "src": "11805:91:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 783, - "id": 813, + "functionReturnParameters": 2264, + "id": 2294, "nodeType": "Return", - "src": "11702:98:1" + "src": "11798:98:5" } ] }, "documentation": "@notice Determines whether the provided proposal ID has a challenge which can be resolved\n@param _propID The proposal ID whose challenge to inspect", - "id": 815, + "id": 2296, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -25929,16 +26553,16 @@ "name": "challengeCanBeResolved", "nodeType": "FunctionDefinition", "parameters": { - "id": 780, + "id": 2261, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 779, + "id": 2260, "name": "_propID", "nodeType": "VariableDeclaration", - "scope": 815, - "src": "11536:15:1", + "scope": 2296, + "src": "11632:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25946,10 +26570,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 778, + "id": 2259, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "11536:7:1", + "src": "11632:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25959,20 +26583,20 @@ "visibility": "internal" } ], - "src": "11535:17:1" + "src": "11631:17:5" }, "payable": false, "returnParameters": { - "id": 783, + "id": 2264, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 782, + "id": 2263, "name": "", "nodeType": "VariableDeclaration", - "scope": 815, - "src": "11574:4:1", + "scope": 2296, + "src": "11670:4:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25980,10 +26604,10 @@ "typeString": "bool" }, "typeName": { - "id": 781, + "id": 2262, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "11574:4:1", + "src": "11670:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25993,19 +26617,19 @@ "visibility": "internal" } ], - "src": "11573:6:1" + "src": "11669:6:5" }, - "scope": 1003, - "src": "11504:301:1", + "scope": 2490, + "src": "11600:301:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 850, + "id": 2331, "nodeType": "Block", - "src": "12050:293:1", + "src": "12146:293:5", "statements": [ { "condition": { @@ -26014,7 +26638,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 827, + "id": 2308, "isConstant": false, "isLValue": false, "isPure": false, @@ -26024,12 +26648,12 @@ "arguments": [ { "argumentTypes": null, - "id": 824, + "id": 2305, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 817, - "src": "12106:12:1", + "referencedDeclaration": 2298, + "src": "12202:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26045,32 +26669,32 @@ ], "expression": { "argumentTypes": null, - "id": 822, + "id": 2303, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "12060:6:1", + "referencedDeclaration": 1591, + "src": "12156:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 823, + "id": 2304, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getTotalNumberOfTokensForWinningOption", "nodeType": "MemberAccess", - "referencedDeclaration": 3186, - "src": "12060:45:1", + "referencedDeclaration": 1166, + "src": "12156:45:5", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256) view external returns (uint256)" } }, - "id": 825, + "id": 2306, "isConstant": false, "isLValue": false, "isPure": false, @@ -26078,7 +26702,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12060:59:1", + "src": "12156:59:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26089,14 +26713,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 826, + "id": 2307, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12123:1:1", + "src": "12219:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -26104,20 +26728,20 @@ }, "value": "0" }, - "src": "12060:64:1", + "src": "12156:64:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 836, + "id": 2317, "nodeType": "IfStatement", - "src": "12056:195:1", + "src": "12152:195:5", "trueBody": { - "id": 835, + "id": 2316, "nodeType": "Block", - "src": "12126:125:1", + "src": "12222:125:5", "statements": [ { "expression": { @@ -26126,7 +26750,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 833, + "id": 2314, "isConstant": false, "isLValue": false, "isPure": false, @@ -26134,14 +26758,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "32", - "id": 828, + "id": 2309, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12210:1:1", + "src": "12306:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", @@ -26157,26 +26781,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 829, + "id": 2310, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "12214:10:1", + "referencedDeclaration": 1583, + "src": "12310:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 831, + "id": 2312, "indexExpression": { "argumentTypes": null, - "id": 830, + "id": 2311, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 817, - "src": "12225:12:1", + "referencedDeclaration": 2298, + "src": "12321:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26187,36 +26811,36 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12214:24:1", + "src": "12310:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 832, + "id": 2313, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "stake", "nodeType": "MemberAccess", - "referencedDeclaration": 102, - "src": "12214:30:1", + "referencedDeclaration": 1568, + "src": "12310:30:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12210:34:1", + "src": "12306:34:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 821, - "id": 834, + "functionReturnParameters": 2302, + "id": 2315, "nodeType": "Return", - "src": "12203:41:1" + "src": "12299:41:5" } ] } @@ -26228,7 +26852,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 848, + "id": 2329, "isConstant": false, "isLValue": false, "isPure": false, @@ -26242,7 +26866,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 842, + "id": 2323, "isConstant": false, "isLValue": false, "isPure": false, @@ -26250,14 +26874,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "32", - "id": 837, + "id": 2318, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12265:1:1", + "src": "12361:1:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", @@ -26273,26 +26897,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 838, + "id": 2319, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "12269:10:1", + "referencedDeclaration": 1583, + "src": "12365:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 840, + "id": 2321, "indexExpression": { "argumentTypes": null, - "id": 839, + "id": 2320, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 817, - "src": "12280:12:1", + "referencedDeclaration": 2298, + "src": "12376:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26303,41 +26927,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12269:24:1", + "src": "12365:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 841, + "id": 2322, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "stake", "nodeType": "MemberAccess", - "referencedDeclaration": 102, - "src": "12269:30:1", + "referencedDeclaration": 1568, + "src": "12365:30:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12265:34:1", + "src": "12361:34:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 843, + "id": 2324, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "12264:36:1", + "src": "12360:36:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26351,26 +26975,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 844, + "id": 2325, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "12303:10:1", + "referencedDeclaration": 1583, + "src": "12399:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 846, + "id": 2327, "indexExpression": { "argumentTypes": null, - "id": 845, + "id": 2326, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 817, - "src": "12314:12:1", + "referencedDeclaration": 2298, + "src": "12410:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26381,41 +27005,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12303:24:1", + "src": "12399:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 847, + "id": 2328, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 96, - "src": "12303:35:1", + "referencedDeclaration": 1562, + "src": "12399:35:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12264:74:1", + "src": "12360:74:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 821, - "id": 849, + "functionReturnParameters": 2302, + "id": 2330, "nodeType": "Return", - "src": "12257:81:1" + "src": "12353:81:5" } ] }, "documentation": "@notice Determines the number of tokens to awarded to the winning party in a challenge\n@param _challengeID The challengeID to determine a reward for", - "id": 851, + "id": 2332, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -26423,16 +27047,16 @@ "name": "challengeWinnerReward", "nodeType": "FunctionDefinition", "parameters": { - "id": 818, + "id": 2299, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 817, + "id": 2298, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 851, - "src": "12004:17:1", + "scope": 2332, + "src": "12100:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26440,10 +27064,10 @@ "typeString": "uint256" }, "typeName": { - "id": 816, + "id": 2297, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12004:4:1", + "src": "12100:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26453,20 +27077,20 @@ "visibility": "internal" } ], - "src": "12003:19:1" + "src": "12099:19:5" }, "payable": false, "returnParameters": { - "id": 821, + "id": 2302, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 820, + "id": 2301, "name": "", "nodeType": "VariableDeclaration", - "scope": 851, - "src": "12044:4:1", + "scope": 2332, + "src": "12140:4:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26474,10 +27098,10 @@ "typeString": "uint256" }, "typeName": { - "id": 819, + "id": 2300, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12044:4:1", + "src": "12140:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26487,73 +27111,125 @@ "visibility": "internal" } ], - "src": "12043:6:1" + "src": "12139:6:5" }, - "scope": 1003, - "src": "11973:370:1", + "scope": 2490, + "src": "12069:370:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 864, + "id": 2348, "nodeType": "Block", - "src": "12559:42:1", + "src": "12655:60:5", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 858, + "id": 2339, "name": "params", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 113, - "src": "12572:6:1", + "referencedDeclaration": 1579, + "src": "12668:6:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 862, + "id": 2346, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 860, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 853, - "src": "12589:5:1", + "arguments": [ + { + "argumentTypes": null, + "id": 2343, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2334, + "src": "12702:5:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2341, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "12685:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2342, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "12685:16:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2344, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "12685:23:5", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 859, + "id": 2340, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "12579:9:1", + "referencedDeclaration": 3696, + "src": "12675:9:5", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 861, + "id": 2345, "isConstant": false, "isLValue": false, "isPure": false, @@ -26561,7 +27237,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12579:16:1", + "src": "12675:34:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -26572,21 +27248,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12572:24:1", + "src": "12668:42:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 857, - "id": 863, + "functionReturnParameters": 2338, + "id": 2347, "nodeType": "Return", - "src": "12565:31:1" + "src": "12661:49:5" } ] }, "documentation": "@notice gets the parameter keyed by the provided name value from the params mapping\n@param _name the key whose value is to be determined", - "id": 865, + "id": 2349, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -26594,16 +27270,16 @@ "name": "get", "nodeType": "FunctionDefinition", "parameters": { - "id": 854, + "id": 2335, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 853, + "id": 2334, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 865, - "src": "12512:12:1", + "scope": 2349, + "src": "12608:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26611,10 +27287,10 @@ "typeString": "string" }, "typeName": { - "id": 852, + "id": 2333, "name": "string", "nodeType": "ElementaryTypeName", - "src": "12512:6:1", + "src": "12608:6:5", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -26624,20 +27300,20 @@ "visibility": "internal" } ], - "src": "12511:14:1" + "src": "12607:14:5" }, "payable": false, "returnParameters": { - "id": 857, + "id": 2338, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 856, + "id": 2337, "name": "value", "nodeType": "VariableDeclaration", - "scope": 865, - "src": "12547:10:1", + "scope": 2349, + "src": "12643:10:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26645,10 +27321,10 @@ "typeString": "uint256" }, "typeName": { - "id": 855, + "id": 2336, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12547:4:1", + "src": "12643:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26658,19 +27334,19 @@ "visibility": "internal" } ], - "src": "12546:12:1" + "src": "12642:12:5" }, - "scope": 1003, - "src": "12499:102:1", + "scope": 2490, + "src": "12595:120:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 881, + "id": 2365, "nodeType": "Block", - "src": "12899:62:1", + "src": "13013:62:5", "statements": [ { "expression": { @@ -26681,26 +27357,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 874, + "id": 2358, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "12912:10:1", + "referencedDeclaration": 1583, + "src": "13026:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 876, + "id": 2360, "indexExpression": { "argumentTypes": null, - "id": 875, + "id": 2359, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 867, - "src": "12923:12:1", + "referencedDeclaration": 2351, + "src": "13037:12:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26711,35 +27387,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12912:24:1", + "src": "13026:24:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 877, + "id": 2361, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokenClaims", "nodeType": "MemberAccess", - "referencedDeclaration": 108, - "src": "12912:36:1", + "referencedDeclaration": 1574, + "src": "13026:36:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 879, + "id": 2363, "indexExpression": { "argumentTypes": null, - "id": 878, + "id": 2362, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 869, - "src": "12949:6:1", + "referencedDeclaration": 2353, + "src": "13063:6:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26750,21 +27426,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12912:44:1", + "src": "13026:44:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 873, - "id": 880, + "functionReturnParameters": 2357, + "id": 2364, "nodeType": "Return", - "src": "12905:51:1" + "src": "13019:51:5" } ] }, "documentation": "@dev Getter for Challenge tokenClaims mappings\n@param _challengeID The challengeID to query\n@param _voter The voter whose claim status to query for the provided challengeID", - "id": 882, + "id": 2366, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -26772,16 +27448,16 @@ "name": "tokenClaims", "nodeType": "FunctionDefinition", "parameters": { - "id": 870, + "id": 2354, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 867, + "id": 2351, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 882, - "src": "12837:17:1", + "scope": 2366, + "src": "12951:17:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26789,10 +27465,10 @@ "typeString": "uint256" }, "typeName": { - "id": 866, + "id": 2350, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12837:4:1", + "src": "12951:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26803,11 +27479,11 @@ }, { "constant": false, - "id": 869, + "id": 2353, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 882, - "src": "12856:14:1", + "scope": 2366, + "src": "12970:14:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26815,10 +27491,10 @@ "typeString": "address" }, "typeName": { - "id": 868, + "id": 2352, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12856:7:1", + "src": "12970:7:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26828,20 +27504,20 @@ "visibility": "internal" } ], - "src": "12836:35:1" + "src": "12950:35:5" }, "payable": false, "returnParameters": { - "id": 873, + "id": 2357, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 872, + "id": 2356, "name": "", "nodeType": "VariableDeclaration", - "scope": 882, - "src": "12893:4:1", + "scope": 2366, + "src": "13007:4:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26849,10 +27525,10 @@ "typeString": "bool" }, "typeName": { - "id": 871, + "id": 2355, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "12893:4:1", + "src": "13007:4:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26862,47 +27538,47 @@ "visibility": "internal" } ], - "src": "12892:6:1" + "src": "13006:6:5" }, - "scope": 1003, - "src": "12816:145:1", + "scope": 2490, + "src": "12930:145:5", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 985, + "id": 2469, "nodeType": "Block", - "src": "13289:943:1", + "src": "13403:1025:5", "statements": [ { "assignments": [ - 888 + 2372 ], "declarations": [ { "constant": false, - "id": 888, + "id": 2372, "name": "prop", "nodeType": "VariableDeclaration", - "scope": 986, - "src": "13295:25:1", + "scope": 2470, + "src": "13409:25:5", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal" }, "typeName": { "contractScope": null, - "id": 887, + "id": 2371, "name": "ParamProposal", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 94, - "src": "13295:13:1", + "referencedDeclaration": 1560, + "src": "13409:13:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage_ptr", "typeString": "struct Parameterizer.ParamProposal" } }, @@ -26910,31 +27586,31 @@ "visibility": "internal" } ], - "id": 892, + "id": 2376, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 889, + "id": 2373, "name": "proposals", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 121, - "src": "13323:9:1", + "referencedDeclaration": 1587, + "src": "13437:9:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$94_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ParamProposal_$1560_storage_$", "typeString": "mapping(bytes32 => struct Parameterizer.ParamProposal storage ref)" } }, - "id": 891, + "id": 2375, "indexExpression": { "argumentTypes": null, - "id": 890, + "id": 2374, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "13333:7:1", + "referencedDeclaration": 2368, + "src": "13447:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -26945,42 +27621,42 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13323:18:1", + "src": "13437:18:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_storage", + "typeIdentifier": "t_struct$_ParamProposal_$1560_storage", "typeString": "struct Parameterizer.ParamProposal storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "13295:46:1" + "src": "13409:46:5" }, { "assignments": [ - 894 + 2378 ], "declarations": [ { "constant": false, - "id": 894, + "id": 2378, "name": "challenge", "nodeType": "VariableDeclaration", - "scope": 986, - "src": "13347:27:1", + "scope": 2470, + "src": "13461:27:5", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge" }, "typeName": { "contractScope": null, - "id": 893, + "id": 2377, "name": "Challenge", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 109, - "src": "13347:9:1", + "referencedDeclaration": 1575, + "src": "13461:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge" } }, @@ -26988,47 +27664,47 @@ "visibility": "internal" } ], - "id": 899, + "id": 2383, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 895, + "id": 2379, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "13377:10:1", + "referencedDeclaration": 1583, + "src": "13491:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 898, + "id": 2382, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 896, + "id": 2380, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13388:4:1", + "referencedDeclaration": 2372, + "src": "13502:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 897, + "id": 2381, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "13388:16:1", + "referencedDeclaration": 1549, + "src": "13502:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27039,27 +27715,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13377:28:1", + "src": "13491:28:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "13347:58:1" + "src": "13461:58:5" }, { "assignments": [ - 901 + 2385 ], "declarations": [ { "constant": false, - "id": 901, + "id": 2385, "name": "reward", "nodeType": "VariableDeclaration", - "scope": 986, - "src": "13497:11:1", + "scope": 2470, + "src": "13611:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27067,10 +27743,10 @@ "typeString": "uint256" }, "typeName": { - "id": 900, + "id": 2384, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "13497:4:1", + "src": "13611:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27080,7 +27756,7 @@ "visibility": "internal" } ], - "id": 906, + "id": 2390, "initialValue": { "argumentTypes": null, "arguments": [ @@ -27088,26 +27764,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 903, + "id": 2387, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13533:4:1", + "referencedDeclaration": 2372, + "src": "13647:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 904, + "id": 2388, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "13533:16:1", + "referencedDeclaration": 1549, + "src": "13647:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27121,18 +27797,18 @@ "typeString": "uint256" } ], - "id": 902, + "id": 2386, "name": "challengeWinnerReward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 851, - "src": "13511:21:1", + "referencedDeclaration": 2332, + "src": "13625:21:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256) view returns (uint256)" } }, - "id": 905, + "id": 2389, "isConstant": false, "isLValue": false, "isPure": false, @@ -27140,19 +27816,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13511:39:1", + "src": "13625:39:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "13497:53:1" + "src": "13611:53:5" }, { "expression": { "argumentTypes": null, - "id": 915, + "id": 2399, "isConstant": false, "isLValue": false, "isPure": false, @@ -27161,26 +27837,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 907, + "id": 2391, "name": "challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "13557:9:1", + "referencedDeclaration": 2378, + "src": "13671:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge storage pointer" } }, - "id": 909, + "id": 2393, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "winningTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 104, - "src": "13557:23:1", + "referencedDeclaration": 1570, + "src": "13671:23:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27195,26 +27871,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 912, + "id": 2396, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13629:4:1", + "referencedDeclaration": 2372, + "src": "13743:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 913, + "id": 2397, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "13629:16:1", + "referencedDeclaration": 1549, + "src": "13743:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27230,32 +27906,32 @@ ], "expression": { "argumentTypes": null, - "id": 910, + "id": 2394, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "13583:6:1", + "referencedDeclaration": 1591, + "src": "13697:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 911, + "id": 2395, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getTotalNumberOfTokensForWinningOption", "nodeType": "MemberAccess", - "referencedDeclaration": 3186, - "src": "13583:45:1", + "referencedDeclaration": 1166, + "src": "13697:45:5", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256) view external returns (uint256)" } }, - "id": 914, + "id": 2398, "isConstant": false, "isLValue": false, "isPure": false, @@ -27263,26 +27939,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13583:63:1", + "src": "13697:63:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13557:89:1", + "src": "13671:89:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 916, + "id": 2400, "nodeType": "ExpressionStatement", - "src": "13557:89:1" + "src": "13671:89:5" }, { "expression": { "argumentTypes": null, - "id": 921, + "id": 2405, "isConstant": false, "isLValue": false, "isPure": false, @@ -27291,26 +27967,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 917, + "id": 2401, "name": "challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "13652:9:1", + "referencedDeclaration": 2378, + "src": "13766:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge storage pointer" } }, - "id": 919, + "id": 2403, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 100, - "src": "13652:18:1", + "referencedDeclaration": 1566, + "src": "13766:18:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -27321,14 +27997,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 920, + "id": 2404, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "13673:4:1", + "src": "13787:4:5", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -27336,15 +28012,15 @@ }, "value": "true" }, - "src": "13652:25:1", + "src": "13766:25:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 922, + "id": 2406, "nodeType": "ExpressionStatement", - "src": "13652:25:1" + "src": "13766:25:5" }, { "condition": { @@ -27354,26 +28030,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 925, + "id": 2409, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13704:4:1", + "referencedDeclaration": 2372, + "src": "13818:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 926, + "id": 2410, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "13704:16:1", + "referencedDeclaration": 1549, + "src": "13818:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27389,32 +28065,32 @@ ], "expression": { "argumentTypes": null, - "id": 923, + "id": 2407, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 125, - "src": "13688:6:1", + "referencedDeclaration": 1591, + "src": "13802:6:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 924, + "id": 2408, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "isPassed", "nodeType": "MemberAccess", - "referencedDeclaration": 3158, - "src": "13688:15:1", + "referencedDeclaration": 1138, + "src": "13802:15:5", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view external returns (bool)" } }, - "id": 927, + "id": 2411, "isConstant": false, "isLValue": false, "isPure": false, @@ -27422,16 +28098,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13688:33:1", + "src": "13802:33:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 983, + "id": 2467, "nodeType": "Block", - "src": "13992:236:1", + "src": "14147:277:5", "statements": [ { "eventCall": { @@ -27439,12 +28115,12 @@ "arguments": [ { "argumentTypes": null, - "id": 962, + "id": 2446, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "14068:7:1", + "referencedDeclaration": 2368, + "src": "14232:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -27454,26 +28130,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 963, + "id": 2447, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "14077:4:1", + "referencedDeclaration": 2372, + "src": "14249:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 964, + "id": 2448, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "14077:16:1", + "referencedDeclaration": 1549, + "src": "14249:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27483,26 +28159,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 965, + "id": 2449, "name": "challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "14095:9:1", + "referencedDeclaration": 2378, + "src": "14275:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge storage pointer" } }, - "id": 966, + "id": 2450, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 96, - "src": "14095:20:1", + "referencedDeclaration": 1562, + "src": "14275:20:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27512,26 +28188,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 967, + "id": 2451, "name": "challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "14117:9:1", + "referencedDeclaration": 2378, + "src": "14305:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge storage pointer" } }, - "id": 968, + "id": 2452, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "winningTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 104, - "src": "14117:23:1", + "referencedDeclaration": 1570, + "src": "14305:23:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27557,18 +28233,18 @@ "typeString": "uint256" } ], - "id": 961, + "id": 2445, "name": "_ChallengeSucceeded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 58, - "src": "14048:19:1", + "referencedDeclaration": 1524, + "src": "14203:19:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (bytes32,uint256,uint256,uint256)" } }, - "id": 969, + "id": 2453, "isConstant": false, "isLValue": false, "isPure": false, @@ -27576,15 +28252,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14048:93:1", + "src": "14203:133:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 970, + "id": 2454, "nodeType": "EmitStatement", - "src": "14043:98:1" + "src": "14198:138:5" }, { "expression": { @@ -27599,42 +28275,42 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 974, + "id": 2458, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 117, - "src": "14172:10:1", + "referencedDeclaration": 1583, + "src": "14368:10:5", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$109_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1575_storage_$", "typeString": "mapping(uint256 => struct Parameterizer.Challenge storage ref)" } }, - "id": 977, + "id": 2461, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 975, + "id": 2459, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "14183:4:1", + "referencedDeclaration": 2372, + "src": "14379:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 976, + "id": 2460, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "14183:16:1", + "referencedDeclaration": 1549, + "src": "14379:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27645,21 +28321,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14172:28:1", + "src": "14368:28:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage", + "typeIdentifier": "t_struct$_Challenge_$1575_storage", "typeString": "struct Parameterizer.Challenge storage ref" } }, - "id": 978, + "id": 2462, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challenger", "nodeType": "MemberAccess", - "referencedDeclaration": 98, - "src": "14172:39:1", + "referencedDeclaration": 1564, + "src": "14368:39:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27667,12 +28343,12 @@ }, { "argumentTypes": null, - "id": 979, + "id": 2463, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 901, - "src": "14213:6:1", + "referencedDeclaration": 2385, + "src": "14409:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27692,32 +28368,32 @@ ], "expression": { "argumentTypes": null, - "id": 972, + "id": 2456, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "14157:5:1", + "referencedDeclaration": 1589, + "src": "14353:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 973, + "id": 2457, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "14157:14:1", + "referencedDeclaration": 431, + "src": "14353:14:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 980, + "id": 2464, "isConstant": false, "isLValue": false, "isPure": false, @@ -27725,7 +28401,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14157:63:1", + "src": "14353:63:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -27739,21 +28415,21 @@ "typeString": "bool" } ], - "id": 971, + "id": 2455, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "14149:7:1", + "referencedDeclaration": 3705, + "src": "14345:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 981, + "id": 2465, "isConstant": false, "isLValue": false, "isPure": false, @@ -27761,25 +28437,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14149:72:1", + "src": "14345:72:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 982, + "id": 2466, "nodeType": "ExpressionStatement", - "src": "14149:72:1" + "src": "14345:72:5" } ] }, - "id": 984, + "id": 2468, "nodeType": "IfStatement", - "src": "13684:544:1", + "src": "13798:626:5", "trueBody": { - "id": 960, + "id": 2444, "nodeType": "Block", - "src": "13723:263:1", + "src": "13837:304:5", "statements": [ { "condition": { @@ -27788,7 +28464,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 931, + "id": 2415, "isConstant": false, "isLValue": false, "isPure": false, @@ -27797,26 +28473,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 928, + "id": 2412, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13759:4:1", + "referencedDeclaration": 2372, + "src": "13873:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 929, + "id": 2413, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "processBy", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "13759:14:1", + "referencedDeclaration": 1557, + "src": "13873:14:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27826,31 +28502,31 @@ "operator": ">", "rightExpression": { "argumentTypes": null, - "id": 930, + "id": 2414, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "13776:3:1", + "referencedDeclaration": 3704, + "src": "13890:3:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13759:20:1", + "src": "13873:20:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 940, + "id": 2424, "nodeType": "IfStatement", - "src": "13755:71:1", + "src": "13869:71:5", "trueBody": { - "id": 939, + "id": 2423, "nodeType": "Block", - "src": "13781:45:1", + "src": "13895:45:5", "statements": [ { "expression": { @@ -27860,26 +28536,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 933, + "id": 2417, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13795:4:1", + "referencedDeclaration": 2372, + "src": "13909:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 934, + "id": 2418, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "name", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "13795:9:1", + "referencedDeclaration": 1553, + "src": "13909:9:5", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -27889,26 +28565,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 935, + "id": 2419, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13806:4:1", + "referencedDeclaration": 2372, + "src": "13920:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 936, + "id": 2420, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "value", "nodeType": "MemberAccess", - "referencedDeclaration": 93, - "src": "13806:10:1", + "referencedDeclaration": 1559, + "src": "13920:10:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27926,18 +28602,18 @@ "typeString": "uint256" } ], - "id": 932, + "id": 2416, "name": "set", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1002, - "src": "13791:3:1", + "referencedDeclaration": 2489, + "src": "13905:3:5", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_string_memory_ptr_$_t_uint256_$returns$__$", "typeString": "function (string memory,uint256)" } }, - "id": 937, + "id": 2421, "isConstant": false, "isLValue": false, "isPure": false, @@ -27945,15 +28621,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13791:26:1", + "src": "13905:26:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 938, + "id": 2422, "nodeType": "ExpressionStatement", - "src": "13791:26:1" + "src": "13905:26:5" } ] } @@ -27964,12 +28640,12 @@ "arguments": [ { "argumentTypes": null, - "id": 942, + "id": 2426, "name": "_propID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 884, - "src": "13855:7:1", + "referencedDeclaration": 2368, + "src": "13978:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -27979,26 +28655,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 943, + "id": 2427, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13864:4:1", + "referencedDeclaration": 2372, + "src": "13995:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 944, + "id": 2428, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "13864:16:1", + "referencedDeclaration": 1549, + "src": "13995:16:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28008,26 +28684,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 945, + "id": 2429, "name": "challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "13882:9:1", + "referencedDeclaration": 2378, + "src": "14021:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge storage pointer" } }, - "id": 946, + "id": 2430, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 96, - "src": "13882:20:1", + "referencedDeclaration": 1562, + "src": "14021:20:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28037,26 +28713,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 947, + "id": 2431, "name": "challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 894, - "src": "13904:9:1", + "referencedDeclaration": 2378, + "src": "14051:9:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$109_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$1575_storage_ptr", "typeString": "struct Parameterizer.Challenge storage pointer" } }, - "id": 948, + "id": 2432, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "winningTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 104, - "src": "13904:23:1", + "referencedDeclaration": 1570, + "src": "14051:23:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28082,18 +28758,18 @@ "typeString": "uint256" } ], - "id": 941, + "id": 2425, "name": "_ChallengeFailed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "13838:16:1", + "referencedDeclaration": 1534, + "src": "13952:16:5", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (bytes32,uint256,uint256,uint256)" } }, - "id": 949, + "id": 2433, "isConstant": false, "isLValue": false, "isPure": false, @@ -28101,15 +28777,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13838:90:1", + "src": "13952:130:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 950, + "id": 2434, "nodeType": "EmitStatement", - "src": "13833:95:1" + "src": "13947:135:5" }, { "expression": { @@ -28122,26 +28798,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 954, + "id": 2438, "name": "prop", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 888, - "src": "13959:4:1", + "referencedDeclaration": 2372, + "src": "14114:4:5", "typeDescriptions": { - "typeIdentifier": "t_struct$_ParamProposal_$94_memory_ptr", + "typeIdentifier": "t_struct$_ParamProposal_$1560_memory_ptr", "typeString": "struct Parameterizer.ParamProposal memory" } }, - "id": 955, + "id": 2439, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 89, - "src": "13959:10:1", + "referencedDeclaration": 1555, + "src": "14114:10:5", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28149,12 +28825,12 @@ }, { "argumentTypes": null, - "id": 956, + "id": 2440, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 901, - "src": "13971:6:1", + "referencedDeclaration": 2385, + "src": "14126:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28174,32 +28850,32 @@ ], "expression": { "argumentTypes": null, - "id": 952, + "id": 2436, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 123, - "src": "13944:5:1", + "referencedDeclaration": 1589, + "src": "14099:5:5", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 953, + "id": 2437, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "13944:14:1", + "referencedDeclaration": 431, + "src": "14099:14:5", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 957, + "id": 2441, "isConstant": false, "isLValue": false, "isPure": false, @@ -28207,7 +28883,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13944:34:1", + "src": "14099:34:5", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -28221,21 +28897,21 @@ "typeString": "bool" } ], - "id": 951, + "id": 2435, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "13936:7:1", + "referencedDeclaration": 3705, + "src": "14091:7:5", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 958, + "id": 2442, "isConstant": false, "isLValue": false, "isPure": false, @@ -28243,15 +28919,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13936:43:1", + "src": "14091:43:5", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 959, + "id": 2443, "nodeType": "ExpressionStatement", - "src": "13936:43:1" + "src": "14091:43:5" } ] } @@ -28259,7 +28935,7 @@ ] }, "documentation": "@dev resolves a challenge for the provided _propID. It must be checked in advance whether the _propID has a challenge on it\n@param _propID the proposal ID whose challenge is to be resolved.", - "id": 986, + "id": 2470, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -28267,16 +28943,16 @@ "name": "resolveChallenge", "nodeType": "FunctionDefinition", "parameters": { - "id": 885, + "id": 2369, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 884, + "id": 2368, "name": "_propID", "nodeType": "VariableDeclaration", - "scope": 986, - "src": "13264:15:1", + "scope": 2470, + "src": "13378:15:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28284,10 +28960,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 883, + "id": 2367, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "13264:7:1", + "src": "13378:7:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -28297,31 +28973,31 @@ "visibility": "internal" } ], - "src": "13263:17:1" + "src": "13377:17:5" }, "payable": false, "returnParameters": { - "id": 886, + "id": 2370, "nodeType": "ParameterList", "parameters": [], - "src": "13289:0:1" + "src": "13403:0:5" }, - "scope": 1003, - "src": "13238:994:1", + "scope": 2490, + "src": "13352:1076:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "private" }, { "body": { - "id": 1001, + "id": 2488, "nodeType": "Block", - "src": "14466:44:1", + "src": "14662:62:5", "statements": [ { "expression": { "argumentTypes": null, - "id": 999, + "id": 2486, "isConstant": false, "isLValue": false, "isPure": false, @@ -28330,54 +29006,106 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 993, + "id": 2477, "name": "params", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 113, - "src": "14472:6:1", + "referencedDeclaration": 1579, + "src": "14668:6:5", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_bytes32_$_t_uint256_$", "typeString": "mapping(bytes32 => uint256)" } }, - "id": 997, + "id": 2484, "indexExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 995, - "name": "_name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 988, - "src": "14489:5:1", + "arguments": [ + { + "argumentTypes": null, + "id": 2481, + "name": "_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2472, + "src": "14702:5:5", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "argumentTypes": null, + "id": 2479, + "name": "abi", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3689, + "src": "14685:3:5", + "typeDescriptions": { + "typeIdentifier": "t_magic_abi", + "typeString": "abi" + } + }, + "id": 2480, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "memberName": "encodePacked", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "14685:16:5", + "typeDescriptions": { + "typeIdentifier": "t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$", + "typeString": "function () pure returns (bytes memory)" + } + }, + "id": 2482, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "14685:23:5", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } } ], "expression": { "argumentTypes": [ { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_bytes_memory_ptr", + "typeString": "bytes memory" } ], - "id": 994, + "id": 2478, "name": "keccak256", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3886, - "src": "14479:9:1", + "referencedDeclaration": 3696, + "src": "14675:9:5", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 996, + "id": 2483, "isConstant": false, "isLValue": false, "isPure": false, @@ -28385,7 +29113,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14479:16:1", + "src": "14675:34:5", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -28396,7 +29124,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "14472:24:1", + "src": "14668:42:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28406,31 +29134,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 998, + "id": 2485, "name": "_value", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 990, - "src": "14499:6:1", + "referencedDeclaration": 2474, + "src": "14713:6:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14472:33:1", + "src": "14668:51:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1000, + "id": 2487, "nodeType": "ExpressionStatement", - "src": "14472:33:1" + "src": "14668:51:5" } ] }, "documentation": "@dev sets the param keted by the provided name to the provided value\n@param _name the name of the param to be set\n@param _value the value to set the param to be set", - "id": 1002, + "id": 2489, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -28438,16 +29166,16 @@ "name": "set", "nodeType": "FunctionDefinition", "parameters": { - "id": 991, + "id": 2475, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 988, + "id": 2472, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1002, - "src": "14431:12:1", + "scope": 2489, + "src": "14627:12:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28455,10 +29183,10 @@ "typeString": "string" }, "typeName": { - "id": 987, + "id": 2471, "name": "string", "nodeType": "ElementaryTypeName", - "src": "14431:6:1", + "src": "14627:6:5", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -28469,11 +29197,11 @@ }, { "constant": false, - "id": 990, + "id": 2474, "name": "_value", "nodeType": "VariableDeclaration", - "scope": 1002, - "src": "14445:11:1", + "scope": 2489, + "src": "14641:11:5", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28481,10 +29209,10 @@ "typeString": "uint256" }, "typeName": { - "id": 989, + "id": 2473, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "14445:4:1", + "src": "14641:4:5", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28494,27 +29222,27 @@ "visibility": "internal" } ], - "src": "14430:27:1" + "src": "14626:27:5" }, "payable": false, "returnParameters": { - "id": 992, + "id": 2476, "nodeType": "ParameterList", "parameters": [], - "src": "14466:0:1" + "src": "14662:0:5" }, - "scope": 1003, - "src": "14418:92:1", + "scope": 2490, + "src": "14614:110:5", "stateMutability": "nonpayable", "superFunction": null, "visibility": "private" } ], - "scope": 1004, - "src": "142:14370:1" + "scope": 2491, + "src": "101:14625:5" } ], - "src": "0:14513:1" + "src": "0:14727:5" }, "compiler": { "name": "solc", @@ -28522,5 +29250,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-06-20T22:39:18.084Z" + "updatedAt": "2018-06-21T22:48:42.369Z" } \ No newline at end of file diff --git a/build/contracts/Registry.json b/build/contracts/Registry.json index 4ec6b7b..67a8a39 100644 --- a/build/contracts/Registry.json +++ b/build/contracts/Registry.json @@ -701,73 +701,73 @@ "type": "function" } ], - "bytecode": "0x60806040523480156200001157600080fd5b50604051620033dc380380620033dc8339810180604052810190808051906020019092919080519060200190929190805190602001909291908051820192919050505083600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600590805190602001906200012f9291906200013a565b5050505050620001e9565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200017d57805160ff1916838001178555620001ae565b82800160010185558215620001ae579182015b82811115620001ad57825182559160200191906001019062000190565b5b509050620001bd9190620001c1565b5090565b620001e691905b80821115620001e2576000816000905550600101620001c8565b5090565b90565b6131e380620001f96000396000f30060806040526004361061011d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806301a5e3fe14610122578063040cf0201461016b57806306fdde03146101a65780630ca36263146102365780631b7bbecb146102675780631de26e16146102b057806343cffefe146102eb578063691a38ab1461034857806377609a411461039157806386bb8f37146103da57806389bb55c7146104115780638a59eb56146104645780638cf8151f146104955780638f1d3776146104de578063a5ba3b1e1461056b578063a7aad3db146105d0578063c18b8db41461063b578063c8187cf1146106cc578063e1e3f9151461070d578063fc0c546a14610764578063fce1ccca146107bb575b600080fd5b34801561012e57600080fd5b506101516004803603810190808035600019169060200190929190505050610812565b604051808215151515815260200191505060405180910390f35b34801561017757600080fd5b506101a4600480360381019080803560001916906020019092919080359060200190929190505050610847565b005b3480156101b257600080fd5b506101bb610b69565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101fb5780820151818401526020810190506101e0565b50505050905090810190601f1680156102285780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561024257600080fd5b506102656004803603810190808035600019169060200190929190505050610c07565b005b34801561027357600080fd5b506102966004803603810190808035600019169060200190929190505050610d17565b604051808215151515815260200191505060405180910390f35b3480156102bc57600080fd5b506102e9600480360381019080803560001916906020019092919080359060200190929190505050610d91565b005b3480156102f757600080fd5b506103326004803603810190808035600019169060200190929190803590602001908201803590602001919091929391929390505050610fc3565b6040518082815260200191505060405180910390f35b34801561035457600080fd5b506103776004803603810190808035600019169060200190929190505050611a51565b604051808215151515815260200191505060405180910390f35b34801561039d57600080fd5b506103c06004803603810190808035600019169060200190929190505050611b0f565b604051808215151515815260200191505060405180910390f35b3480156103e657600080fd5b5061040f6004803603810190808035906020019092919080359060200190929190505050611c1b565b005b34801561041d57600080fd5b50610462600480360381019080803560001916906020019092919080359060200190929190803590602001908201803590602001919091929391929390505050611fed565b005b34801561047057600080fd5b50610493600480360381019080803560001916906020019092919050505061248f565b005b3480156104a157600080fd5b506104c460048036038101908080356000191690602001909291905050506124d0565b604051808215151515815260200191505060405180910390f35b3480156104ea57600080fd5b50610509600480360381019080803590602001909291905050506124fa565b604051808681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001841515151581526020018381526020018281526020019550505050505060405180910390f35b34801561057757600080fd5b506105b660048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061255d565b604051808215151515815260200191505060405180910390f35b3480156105dc57600080fd5b50610625600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291905050506125c7565b6040518082815260200191505060405180910390f35b34801561064757600080fd5b5061066a6004803603810190808035600019169060200190929190505050612721565b60405180868152602001851515151581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019550505050505060405180910390f35b3480156106d857600080fd5b506106f760048036038101908080359060200190929190505050612784565b6040518082815260200191505060405180910390f35b34801561071957600080fd5b506107226129b5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561077057600080fd5b506107796129db565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156107c757600080fd5b506107d0612a01565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600060016000836000191660001916815260200190815260200160002060010160009054906101000a900460ff169050919050565b600060016000846000191660001916815260200190815260200160002090503373ffffffffffffffffffffffffffffffffffffffff168160010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156108c457600080fd5b806002015482111515156108d757600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f6d696e4465706f73697400000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561099957600080fd5b505af11580156109ad573d6000803e3d6000fd5b505050506040513d60208110156109c357600080fd5b810190808051906020019092919050505082826002015403101515156109e857600080fd5b818160020160008282540392505081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610abf57600080fd5b505af1158015610ad3573d6000803e3d6000fd5b505050506040513d6020811015610ae957600080fd5b81019080805190602001909291905050501515610b0557600080fd5b3373ffffffffffffffffffffffffffffffffffffffff1683600019167f9d9ed58779badf90c56d72f3b54def9f73dc875d8f86416c8334b55328c6c106848460020154604051808381526020018281526020019250505060405180910390a3505050565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bff5780601f10610bd457610100808354040283529160200191610bff565b820191906000526020600020905b815481529060010190602001808311610be257829003601f168201915b505050505081565b600060016000836000191660001916815260200190815260200160002090508060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610c8457600080fd5b610c8d82610812565b1515610c9857600080fd5b600081600301541480610cce57506000808260030154815260200190815260200160002060010160149054906101000a900460ff165b1515610cd957600080fd5b610ce282612a27565b81600019167f8a51904a50ce4451be09dc08242bd2d5565b05cf0f4f5aa88c77f96fdf538b4260405160405180910390a25050565b600080600160008460001916600019168152602001908152602001600020600301549050600060016000856000191660001916815260200190815260200160002060030154118015610d89575060008082815260200190815260200160002060010160149054906101000a900460ff16155b915050919050565b600060016000846000191660001916815260200190815260200160002090503373ffffffffffffffffffffffffffffffffffffffff168160010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515610e0e57600080fd5b818160020160008282540192505081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610f1957600080fd5b505af1158015610f2d573d6000803e3d6000fd5b505050506040513d6020811015610f4357600080fd5b81019080805190602001909291905050501515610f5f57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff1683600019167ff63fcfb210c709154f0260502b2586fcee5550d17dc828be3127ccdedec620ab848460020154604051808381526020018281526020019250505060405180910390a3505050565b600080600080600080600160008a600019166000191681526020019081526020016000209450600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f6d696e4465706f73697400000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b505050506040513d60208110156110d557600080fd5b810190808051906020019092919050505093506110f1896124d0565b8061110a57508460010160009054906101000a900460ff165b151561111557600080fd5b60008560030154148061114b57506000808660030154815260200190815260200160002060010160149054906101000a900460ff165b151561115657600080fd5b83856002015410156111a55761116b89612a27565b88600019167f4a9ee335af9e32f32f2229943dc7a0d3b5adf7e4c5c4062b372eae8c476d928660405160405180910390a260009550611a45565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166332ed3d60600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f766f746551756f72756d00000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156112a557600080fd5b505af11580156112b9573d6000803e3d6000fd5b505050506040513d60208110156112cf57600080fd5b8101908080519060200190929190505050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600e8152602001807f636f6d6d697453746167654c656e000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156113a257600080fd5b505af11580156113b6573d6000803e3d6000fd5b505050506040513d60208110156113cc57600080fd5b8101908080519060200190929190505050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600e8152602001807f72657665616c53746167654c656e000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561149f57600080fd5b505af11580156114b3573d6000803e3d6000fd5b505050506040513d60208110156114c957600080fd5b81019080805190602001909291905050506040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018381526020018281526020019350505050602060405180830381600087803b15801561153a57600080fd5b505af115801561154e573d6000803e3d6000fd5b505050506040513d602081101561156457600080fd5b8101908080519060200190929190505050925060a060405190810160405280606486600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600f8152602001807f64697370656e736174696f6e5063740000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561164857600080fd5b505af115801561165c573d6000803e3d6000fd5b505050506040513d602081101561167257600080fd5b81019080805190602001909291905050506064030281151561169057fe5b0481526020013373ffffffffffffffffffffffffffffffffffffffff16815260200160001515815260200185815260200160008152506000808581526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010160146101000a81548160ff0219169083151502179055506060820151816002015560808201518160030155905050828560030181905550838560020160008282540392505081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330876040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561187457600080fd5b505af1158015611888573d6000803e3d6000fd5b505050506040513d602081101561189e57600080fd5b810190808051906020019092919050505015156118ba57600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636148fed5846040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060a060405180830381600087803b15801561194b57600080fd5b505af115801561195f573d6000803e3d6000fd5b505050506040513d60a081101561197557600080fd5b81019080805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919050505090915090505080925081935050503373ffffffffffffffffffffffffffffffffffffffff1689600019167ff98a08756a3603420a080d66764f73deb1e30896c315cfed03e17f88f5eb30f7858b8b8787604051808681526020018060200184815260200183815260200182810382528686828181526020019250808284378201915050965050505050505060405180910390a38295505b50505050509392505050565b600080600160008460001916600019168152602001908152602001600020600301549050611a7e836124d0565b8015611aa757504260016000856000191660001916815260200190815260200160002060000154105b8015611ab95750611ab783610812565b155b8015611af657506000811480611af557506001151560008083815260200190815260200160002060010160149054906101000a900460ff161515145b5b15611b045760019150611b09565b600091505b50919050565b600080600160008460001916600019168152602001908152602001600020600301549050611b3c83610d17565b1515611b4757600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ee684830826040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015611bd857600080fd5b505af1158015611bec573d6000803e3d6000fd5b505050506040513d6020811015611c0257600080fd5b8101908080519060200190929190505050915050919050565b6000806000151560008086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515141515611c9057600080fd5b6001151560008086815260200190815260200160002060010160149054906101000a900460ff161515141515611cc557600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0693386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b158015611d9257600080fd5b505af1158015611da6573d6000803e3d6000fd5b505050506040513d6020811015611dbc57600080fd5b81019080805190602001909291905050509150611dda3385856125c7565b905081600080868152602001908152602001600020600301600082825403925050819055508060008086815260200190815260200160002060000160008282540392505081905550600160008086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611f5257600080fd5b505af1158015611f66573d6000803e3d6000fd5b505050506040513d6020811015611f7c57600080fd5b81019080805190602001909291905050501515611f9857600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16847f6f4c982acc31b0af2cf1dc1556f21c0325d893782d65e83c68a5534a33f59957836040518082815260200191505060405180910390a350505050565b6000611ff885610812565b15151561200457600080fd5b61200d856124d0565b15151561201957600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f6d696e4465706f73697400000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156120db57600080fd5b505af11580156120ef573d6000803e3d6000fd5b505050506040513d602081101561210557600080fd5b8101908080519060200190929190505050841015151561212457600080fd5b6001600086600019166000191681526020019081526020016000209050338160010160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550612293600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600d8152602001807f6170706c7953746167654c656e00000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561224957600080fd5b505af115801561225d573d6000803e3d6000fd5b505050506040513d602081101561227357600080fd5b810190808051906020019092919050505042612c8290919063ffffffff16565b8160000181905550838160020181905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1630876040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156123c157600080fd5b505af11580156123d5573d6000803e3d6000fd5b505050506040513d60208110156123eb57600080fd5b8101908080519060200190929190505050151561240757600080fd5b3373ffffffffffffffffffffffffffffffffffffffff1685600019167fa27f550c3c7a7c6d8369e5383fdc7a3b4850d8ce9e20066f9d496f6989f0086486846000015487876040518085815260200184815260200180602001828103825284848281815260200192508082843782019150509550505050505060405180910390a35050505050565b61249881611a51565b156124ab576124a681612ca0565b6124cd565b6124b481611b0f565b156124c7576124c281612d3d565b6124cc565b600080fd5b5b50565b60008060016000846000191660001916815260200190815260200160002060000154119050919050565b60006020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010160149054906101000a900460ff16908060020154908060030154905085565b600080600084815260200190815260200160002060040160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600080600080600080878152602001908152602001600020600301549250600080878152602001908152602001600020600001549150600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0698888886040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b1580156126ca57600080fd5b505af11580156126de573d6000803e3d6000fd5b505050506040513d60208110156126f457600080fd5b810190808051906020019092919050505090508282820281151561271457fe5b0493505050509392505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900460ff16908060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154905085565b600080600083815260200190815260200160002060010160149054906101000a900460ff1615801561287e5750600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ee684830836040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561284257600080fd5b505af1158015612856573d6000803e3d6000fd5b505050506040513d602081101561286c57600080fd5b81019080805190602001909291905050505b151561288957600080fd5b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a6846040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561291c57600080fd5b505af1158015612930573d6000803e3d6000fd5b505050506040513d602081101561294657600080fd5b8101908080519060200190929190505050141561297d576000808381526020019081526020016000206002015460020290506129b0565b60008083815260200190815260200160002060000154600080848152602001908152602001600020600201546002020390505b919050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600060016000856000191660001916815260200190815260200160002092508260010160009054906101000a900460ff1615612a965783600019167fd1ffb796b7108387b2f02adf47b4b81a1690cf2a190422c87a4f670780103e6360405160405180910390a2612ac8565b83600019167f2e5ec035f6eac8ff1cf7cdf36cfeca7c85413f9f67652dc2c13d20f337204a2660405160405180910390a25b8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150826002015490506001600085600019166000191681526020019081526020016000206000808201600090556001820160006101000a81549060ff02191690556001820160016101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905550506000811115612c7c57600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015612c3557600080fd5b505af1158015612c49573d6000803e3d6000fd5b505050506040513d6020811015612c5f57600080fd5b81019080805190602001909291905050501515612c7b57600080fd5b5b50505050565b6000808284019050838110151515612c9657fe5b8091505092915050565b60016000826000191660001916815260200190815260200160002060010160009054906101000a900460ff161515612d045780600019167fa7bc1d57d9006d9d248707c7b6828c1bab8c51719cc06d78c82a3ee891ef967c60405160405180910390a25b6001806000836000191660001916815260200190815260200160002060010160006101000a81548160ff02191690831515021790555050565b600080600160008460001916600019168152602001908152602001600020600301549150612d6a82612784565b9050600160008084815260200190815260200160002060010160146101000a81548160ff021916908315150217905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a6836040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015612e2b57600080fd5b505af1158015612e3f573d6000803e3d6000fd5b505050506040513d6020811015612e5557600080fd5b810190808051906020019092919050505060008084815260200190815260200160002060030181905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166349403183836040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015612f1057600080fd5b505af1158015612f24573d6000803e3d6000fd5b505050506040513d6020811015612f3a57600080fd5b810190808051906020019092919050505015612ff957612f5983612ca0565b80600160008560001916600019168152602001908152602001600020600201600082825401925050819055508183600019167fc4497224aa78dd50c9b3e344aab02596201ca1e6dca4057a91a6c02f83f4f6c16000808681526020019081526020016000206000015460008087815260200190815260200160002060030154604051808381526020018281526020019250505060405180910390a36131b2565b61300283612a27565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60008085815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156130fc57600080fd5b505af1158015613110573d6000803e3d6000fd5b505050506040513d602081101561312657600080fd5b8101908080519060200190929190505050151561314257600080fd5b8183600019167f362a12431f779a2baff4f77f75ba7960ae993a5c41b425df11f7fd0af2b9cbe66000808681526020019081526020016000206000015460008087815260200190815260200160002060030154604051808381526020018281526020019250505060405180910390a35b5050505600a165627a7a7230582040a0dbc72fe8fc1dd774d82db9cacca5105e8487854615622f8d6299cd318f410029", - "deployedBytecode": "0x60806040526004361061011d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806301a5e3fe14610122578063040cf0201461016b57806306fdde03146101a65780630ca36263146102365780631b7bbecb146102675780631de26e16146102b057806343cffefe146102eb578063691a38ab1461034857806377609a411461039157806386bb8f37146103da57806389bb55c7146104115780638a59eb56146104645780638cf8151f146104955780638f1d3776146104de578063a5ba3b1e1461056b578063a7aad3db146105d0578063c18b8db41461063b578063c8187cf1146106cc578063e1e3f9151461070d578063fc0c546a14610764578063fce1ccca146107bb575b600080fd5b34801561012e57600080fd5b506101516004803603810190808035600019169060200190929190505050610812565b604051808215151515815260200191505060405180910390f35b34801561017757600080fd5b506101a4600480360381019080803560001916906020019092919080359060200190929190505050610847565b005b3480156101b257600080fd5b506101bb610b69565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101fb5780820151818401526020810190506101e0565b50505050905090810190601f1680156102285780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561024257600080fd5b506102656004803603810190808035600019169060200190929190505050610c07565b005b34801561027357600080fd5b506102966004803603810190808035600019169060200190929190505050610d17565b604051808215151515815260200191505060405180910390f35b3480156102bc57600080fd5b506102e9600480360381019080803560001916906020019092919080359060200190929190505050610d91565b005b3480156102f757600080fd5b506103326004803603810190808035600019169060200190929190803590602001908201803590602001919091929391929390505050610fc3565b6040518082815260200191505060405180910390f35b34801561035457600080fd5b506103776004803603810190808035600019169060200190929190505050611a51565b604051808215151515815260200191505060405180910390f35b34801561039d57600080fd5b506103c06004803603810190808035600019169060200190929190505050611b0f565b604051808215151515815260200191505060405180910390f35b3480156103e657600080fd5b5061040f6004803603810190808035906020019092919080359060200190929190505050611c1b565b005b34801561041d57600080fd5b50610462600480360381019080803560001916906020019092919080359060200190929190803590602001908201803590602001919091929391929390505050611fed565b005b34801561047057600080fd5b50610493600480360381019080803560001916906020019092919050505061248f565b005b3480156104a157600080fd5b506104c460048036038101908080356000191690602001909291905050506124d0565b604051808215151515815260200191505060405180910390f35b3480156104ea57600080fd5b50610509600480360381019080803590602001909291905050506124fa565b604051808681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001841515151581526020018381526020018281526020019550505050505060405180910390f35b34801561057757600080fd5b506105b660048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061255d565b604051808215151515815260200191505060405180910390f35b3480156105dc57600080fd5b50610625600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291905050506125c7565b6040518082815260200191505060405180910390f35b34801561064757600080fd5b5061066a6004803603810190808035600019169060200190929190505050612721565b60405180868152602001851515151581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019550505050505060405180910390f35b3480156106d857600080fd5b506106f760048036038101908080359060200190929190505050612784565b6040518082815260200191505060405180910390f35b34801561071957600080fd5b506107226129b5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561077057600080fd5b506107796129db565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156107c757600080fd5b506107d0612a01565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600060016000836000191660001916815260200190815260200160002060010160009054906101000a900460ff169050919050565b600060016000846000191660001916815260200190815260200160002090503373ffffffffffffffffffffffffffffffffffffffff168160010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156108c457600080fd5b806002015482111515156108d757600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f6d696e4465706f73697400000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561099957600080fd5b505af11580156109ad573d6000803e3d6000fd5b505050506040513d60208110156109c357600080fd5b810190808051906020019092919050505082826002015403101515156109e857600080fd5b818160020160008282540392505081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610abf57600080fd5b505af1158015610ad3573d6000803e3d6000fd5b505050506040513d6020811015610ae957600080fd5b81019080805190602001909291905050501515610b0557600080fd5b3373ffffffffffffffffffffffffffffffffffffffff1683600019167f9d9ed58779badf90c56d72f3b54def9f73dc875d8f86416c8334b55328c6c106848460020154604051808381526020018281526020019250505060405180910390a3505050565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bff5780601f10610bd457610100808354040283529160200191610bff565b820191906000526020600020905b815481529060010190602001808311610be257829003601f168201915b505050505081565b600060016000836000191660001916815260200190815260200160002090508060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610c8457600080fd5b610c8d82610812565b1515610c9857600080fd5b600081600301541480610cce57506000808260030154815260200190815260200160002060010160149054906101000a900460ff165b1515610cd957600080fd5b610ce282612a27565b81600019167f8a51904a50ce4451be09dc08242bd2d5565b05cf0f4f5aa88c77f96fdf538b4260405160405180910390a25050565b600080600160008460001916600019168152602001908152602001600020600301549050600060016000856000191660001916815260200190815260200160002060030154118015610d89575060008082815260200190815260200160002060010160149054906101000a900460ff16155b915050919050565b600060016000846000191660001916815260200190815260200160002090503373ffffffffffffffffffffffffffffffffffffffff168160010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515610e0e57600080fd5b818160020160008282540192505081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610f1957600080fd5b505af1158015610f2d573d6000803e3d6000fd5b505050506040513d6020811015610f4357600080fd5b81019080805190602001909291905050501515610f5f57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff1683600019167ff63fcfb210c709154f0260502b2586fcee5550d17dc828be3127ccdedec620ab848460020154604051808381526020018281526020019250505060405180910390a3505050565b600080600080600080600160008a600019166000191681526020019081526020016000209450600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f6d696e4465706f73697400000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b505050506040513d60208110156110d557600080fd5b810190808051906020019092919050505093506110f1896124d0565b8061110a57508460010160009054906101000a900460ff165b151561111557600080fd5b60008560030154148061114b57506000808660030154815260200190815260200160002060010160149054906101000a900460ff165b151561115657600080fd5b83856002015410156111a55761116b89612a27565b88600019167f4a9ee335af9e32f32f2229943dc7a0d3b5adf7e4c5c4062b372eae8c476d928660405160405180910390a260009550611a45565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166332ed3d60600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f766f746551756f72756d00000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156112a557600080fd5b505af11580156112b9573d6000803e3d6000fd5b505050506040513d60208110156112cf57600080fd5b8101908080519060200190929190505050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600e8152602001807f636f6d6d697453746167654c656e000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156113a257600080fd5b505af11580156113b6573d6000803e3d6000fd5b505050506040513d60208110156113cc57600080fd5b8101908080519060200190929190505050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600e8152602001807f72657665616c53746167654c656e000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561149f57600080fd5b505af11580156114b3573d6000803e3d6000fd5b505050506040513d60208110156114c957600080fd5b81019080805190602001909291905050506040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018381526020018281526020019350505050602060405180830381600087803b15801561153a57600080fd5b505af115801561154e573d6000803e3d6000fd5b505050506040513d602081101561156457600080fd5b8101908080519060200190929190505050925060a060405190810160405280606486600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600f8152602001807f64697370656e736174696f6e5063740000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561164857600080fd5b505af115801561165c573d6000803e3d6000fd5b505050506040513d602081101561167257600080fd5b81019080805190602001909291905050506064030281151561169057fe5b0481526020013373ffffffffffffffffffffffffffffffffffffffff16815260200160001515815260200185815260200160008152506000808581526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010160146101000a81548160ff0219169083151502179055506060820151816002015560808201518160030155905050828560030181905550838560020160008282540392505081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330876040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561187457600080fd5b505af1158015611888573d6000803e3d6000fd5b505050506040513d602081101561189e57600080fd5b810190808051906020019092919050505015156118ba57600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636148fed5846040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060a060405180830381600087803b15801561194b57600080fd5b505af115801561195f573d6000803e3d6000fd5b505050506040513d60a081101561197557600080fd5b81019080805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919050505090915090505080925081935050503373ffffffffffffffffffffffffffffffffffffffff1689600019167ff98a08756a3603420a080d66764f73deb1e30896c315cfed03e17f88f5eb30f7858b8b8787604051808681526020018060200184815260200183815260200182810382528686828181526020019250808284378201915050965050505050505060405180910390a38295505b50505050509392505050565b600080600160008460001916600019168152602001908152602001600020600301549050611a7e836124d0565b8015611aa757504260016000856000191660001916815260200190815260200160002060000154105b8015611ab95750611ab783610812565b155b8015611af657506000811480611af557506001151560008083815260200190815260200160002060010160149054906101000a900460ff161515145b5b15611b045760019150611b09565b600091505b50919050565b600080600160008460001916600019168152602001908152602001600020600301549050611b3c83610d17565b1515611b4757600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ee684830826040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015611bd857600080fd5b505af1158015611bec573d6000803e3d6000fd5b505050506040513d6020811015611c0257600080fd5b8101908080519060200190929190505050915050919050565b6000806000151560008086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515141515611c9057600080fd5b6001151560008086815260200190815260200160002060010160149054906101000a900460ff161515141515611cc557600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0693386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b158015611d9257600080fd5b505af1158015611da6573d6000803e3d6000fd5b505050506040513d6020811015611dbc57600080fd5b81019080805190602001909291905050509150611dda3385856125c7565b905081600080868152602001908152602001600020600301600082825403925050819055508060008086815260200190815260200160002060000160008282540392505081905550600160008086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611f5257600080fd5b505af1158015611f66573d6000803e3d6000fd5b505050506040513d6020811015611f7c57600080fd5b81019080805190602001909291905050501515611f9857600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16847f6f4c982acc31b0af2cf1dc1556f21c0325d893782d65e83c68a5534a33f59957836040518082815260200191505060405180910390a350505050565b6000611ff885610812565b15151561200457600080fd5b61200d856124d0565b15151561201957600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f6d696e4465706f73697400000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156120db57600080fd5b505af11580156120ef573d6000803e3d6000fd5b505050506040513d602081101561210557600080fd5b8101908080519060200190929190505050841015151561212457600080fd5b6001600086600019166000191681526020019081526020016000209050338160010160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550612293600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600d8152602001807f6170706c7953746167654c656e00000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561224957600080fd5b505af115801561225d573d6000803e3d6000fd5b505050506040513d602081101561227357600080fd5b810190808051906020019092919050505042612c8290919063ffffffff16565b8160000181905550838160020181905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1630876040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156123c157600080fd5b505af11580156123d5573d6000803e3d6000fd5b505050506040513d60208110156123eb57600080fd5b8101908080519060200190929190505050151561240757600080fd5b3373ffffffffffffffffffffffffffffffffffffffff1685600019167fa27f550c3c7a7c6d8369e5383fdc7a3b4850d8ce9e20066f9d496f6989f0086486846000015487876040518085815260200184815260200180602001828103825284848281815260200192508082843782019150509550505050505060405180910390a35050505050565b61249881611a51565b156124ab576124a681612ca0565b6124cd565b6124b481611b0f565b156124c7576124c281612d3d565b6124cc565b600080fd5b5b50565b60008060016000846000191660001916815260200190815260200160002060000154119050919050565b60006020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010160149054906101000a900460ff16908060020154908060030154905085565b600080600084815260200190815260200160002060040160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600080600080600080878152602001908152602001600020600301549250600080878152602001908152602001600020600001549150600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0698888886040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b1580156126ca57600080fd5b505af11580156126de573d6000803e3d6000fd5b505050506040513d60208110156126f457600080fd5b810190808051906020019092919050505090508282820281151561271457fe5b0493505050509392505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900460ff16908060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154905085565b600080600083815260200190815260200160002060010160149054906101000a900460ff1615801561287e5750600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ee684830836040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561284257600080fd5b505af1158015612856573d6000803e3d6000fd5b505050506040513d602081101561286c57600080fd5b81019080805190602001909291905050505b151561288957600080fd5b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a6846040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561291c57600080fd5b505af1158015612930573d6000803e3d6000fd5b505050506040513d602081101561294657600080fd5b8101908080519060200190929190505050141561297d576000808381526020019081526020016000206002015460020290506129b0565b60008083815260200190815260200160002060000154600080848152602001908152602001600020600201546002020390505b919050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600060016000856000191660001916815260200190815260200160002092508260010160009054906101000a900460ff1615612a965783600019167fd1ffb796b7108387b2f02adf47b4b81a1690cf2a190422c87a4f670780103e6360405160405180910390a2612ac8565b83600019167f2e5ec035f6eac8ff1cf7cdf36cfeca7c85413f9f67652dc2c13d20f337204a2660405160405180910390a25b8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150826002015490506001600085600019166000191681526020019081526020016000206000808201600090556001820160006101000a81549060ff02191690556001820160016101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905550506000811115612c7c57600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015612c3557600080fd5b505af1158015612c49573d6000803e3d6000fd5b505050506040513d6020811015612c5f57600080fd5b81019080805190602001909291905050501515612c7b57600080fd5b5b50505050565b6000808284019050838110151515612c9657fe5b8091505092915050565b60016000826000191660001916815260200190815260200160002060010160009054906101000a900460ff161515612d045780600019167fa7bc1d57d9006d9d248707c7b6828c1bab8c51719cc06d78c82a3ee891ef967c60405160405180910390a25b6001806000836000191660001916815260200190815260200160002060010160006101000a81548160ff02191690831515021790555050565b600080600160008460001916600019168152602001908152602001600020600301549150612d6a82612784565b9050600160008084815260200190815260200160002060010160146101000a81548160ff021916908315150217905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a6836040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015612e2b57600080fd5b505af1158015612e3f573d6000803e3d6000fd5b505050506040513d6020811015612e5557600080fd5b810190808051906020019092919050505060008084815260200190815260200160002060030181905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166349403183836040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015612f1057600080fd5b505af1158015612f24573d6000803e3d6000fd5b505050506040513d6020811015612f3a57600080fd5b810190808051906020019092919050505015612ff957612f5983612ca0565b80600160008560001916600019168152602001908152602001600020600201600082825401925050819055508183600019167fc4497224aa78dd50c9b3e344aab02596201ca1e6dca4057a91a6c02f83f4f6c16000808681526020019081526020016000206000015460008087815260200190815260200160002060030154604051808381526020018281526020019250505060405180910390a36131b2565b61300283612a27565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60008085815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156130fc57600080fd5b505af1158015613110573d6000803e3d6000fd5b505050506040513d602081101561312657600080fd5b8101908080519060200190929190505050151561314257600080fd5b8183600019167f362a12431f779a2baff4f77f75ba7960ae993a5c41b425df11f7fd0af2b9cbe66000808681526020019081526020016000206000015460008087815260200190815260200160002060030154604051808381526020018281526020019250505060405180910390a35b5050505600a165627a7a7230582040a0dbc72fe8fc1dd774d82db9cacca5105e8487854615622f8d6299cd318f410029", - "sourceMap": "171:17160:2:-;;;2915:268;8:9:-1;5:2;;;30:1;27;20:12;5:2;2915:268:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3065:10;3042:5;;:34;;;;;;;;;;;;;;;;;;3102:9;3082:6;;:30;;;;;;;;;;;;;;;;;;3148:11;3118:13;;:42;;;;;;;;;;;;;;;;;;3173:5;3166:4;:12;;;;;;;;;;;;:::i;:::-;;2915:268;;;;171:17160;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;", - "deployedSourceMap": "171:17160:2:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12111:136;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12111:136:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5228:466;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5228:466:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2530:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2530:18:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2530:18:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5947:429;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5947:429:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12723:229;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12723:229:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4629:340;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4629:340:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6887:1566;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6887:1566:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11243:706;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11243:706:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13187:233;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13187:233:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9360:907;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9360:907:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3679:693;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3679:693:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8682:268;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8682:268:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12407:138;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12407:138:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2259:44;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2259:44:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14259:145;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14259:145:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10723:357;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10723:357:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2363:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2363:43:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13598:446;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13598:446:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2492:34;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2492:34:2;;;;;;;;;;;;;;;;;;;;;;;;;;;2433:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2433:27:2;;;;;;;;;;;;;;;;;;;;;;;;;;;2464:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2464:24:2;;;;;;;;;;;;;;;;;;;;;;;;;;;12111:136;12177:16;12208:8;:22;12217:12;12208:22;;;;;;;;;;;;;;;;;:34;;;;;;;;;;;;12201:41;;12111:136;;;:::o;5228:466::-;5297:23;5323:8;:22;5332:12;5323:22;;;;;;;;;;;;;;;;;5297:48;;5377:10;5360:27;;:7;:13;;;;;;;;;;;;:27;;;5352:36;;;;;;;;5413:7;:23;;;5402:7;:34;;5394:43;;;;;;;;5488:13;;;;;;;;;;;:17;;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5488:31:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5488:31:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5488:31:2;;;;;;;;;;;;;;;;5477:7;5451;:23;;;:33;:68;;5443:77;;;;;;;;5554:7;5527;:23;;;:34;;;;;;;;;;;5575:5;;;;;;;;;;;:14;;;5590:10;5602:7;5575:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5575:35:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5575:35:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5575:35:2;;;;;;;;;;;;;;;;5567:44;;;;;;;;5678:10;5618:71;;5630:12;5618:71;;;;5644:7;5653;:23;;;5618:71;;;;;;;;;;;;;;;;;;;;;;;;5228:466;;;:::o;2530:18::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5947:429::-;5998:23;6024:8;:22;6033:12;6024:22;;;;;;;;;;;;;;;;;5998:48;;6075:7;:13;;;;;;;;;;;;6061:27;;:10;:27;;;6053:36;;;;;;;;6103:27;6117:12;6103:13;:27::i;:::-;6095:36;;;;;;;;6213:1;6190:7;:19;;;:24;:68;;;;6218:10;:31;6229:7;:19;;;6218:31;;;;;;;;;;;:40;;;;;;;;;;;;6190:68;6182:77;;;;;;;;6308:26;6321:12;6308;:26::i;:::-;6358:12;6340:31;;;;;;;;;;;;;5947:429;;:::o;12723:229::-;12791:4;12803:16;12822:8;:22;12831:12;12822:22;;;;;;;;;;;;;;;;;:34;;;12803:53;;12908:1;12871:8;:22;12880:12;12871:22;;;;;;;;;;;;;;;;;:34;;;:38;:75;;;;;12914:10;:23;12925:11;12914:23;;;;;;;;;;;:32;;;;;;;;;;;;12913:33;12871:75;12863:84;;12723:229;;;;:::o;4629:340::-;4697:23;4723:8;:22;4732:12;4723:22;;;;;;;;;;;;;;;;;4697:48;;4777:10;4760:27;;:7;:13;;;;;;;;;;;;:27;;;4752:36;;;;;;;;4822:7;4795;:23;;;:34;;;;;;;;;;;4843:5;;;;;;;;;;;:18;;;4862:10;4874:4;4880:7;4843:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4843:45:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4843:45:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4843:45:2;;;;;;;;;;;;;;;;4835:54;;;;;;;;4953:10;4896:68;;4905:12;4896:68;;;;4919:7;4928;:23;;;4896:68;;;;;;;;;;;;;;;;;;;;;;;;4629:340;;;:::o;6887:1566::-;6960:16;6984:23;7038:12;7551:11;8233:18;8257;7010:8;:22;7019:12;7010:22;;;;;;;;;;;;;;;;;6984:48;;7053:13;;;;;;;;;;;:17;;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7053:31:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7053:31:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7053:31:2;;;;;;;;;;;;;;;;7038:46;;7165:24;7176:12;7165:10;:24::i;:::-;:47;;;;7193:7;:19;;;;;;;;;;;;7165:47;7157:56;;;;;;;;7285:1;7262:7;:19;;;:24;:68;;;;7290:10;:31;7301:7;:19;;;7290:31;;;;;;;;;;;:40;;;;;;;;;;;;7262:68;7254:77;;;;;;;;7368:7;7342;:23;;;:33;7338:188;;;7439:26;7452:12;7439;:26::i;:::-;7490:12;7473:30;;;;;;;;;;;;;7518:1;7511:8;;;;7338:188;7565:6;;;;;;;;;;;:16;;;7591:13;;;;;;;;;;;:17;;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7591:31:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7591:31:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7591:31:2;;;;;;;;;;;;;;;;7632:13;;;;;;;;;;;:17;;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7632:35:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7632:35:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7632:35:2;;;;;;;;;;;;;;;;7677:13;;;;;;;;;;;:17;;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7677:35:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7677:35:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7677:35:2;;;;;;;;;;;;;;;;7565:153;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7565:153:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7565:153:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7565:153:2;;;;;;;;;;;;;;;;7551:167;;7746:196;;;;;;;;;7865:3;7854:7;7814:13;;;;;;;;;;;:17;;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7814:36:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7814:36:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7814:36:2;;;;;;;;;;;;;;;;7808:3;:42;7807:54;7806:62;;;;;;;;7746:196;;;;7776:10;7746:196;;;;;;7908:5;7746:196;;;;;;7883:7;7746:196;;;;7934:1;7746:196;;;7725:10;:18;7736:6;7725:18;;;;;;;;;;;:217;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8029:6;8007:7;:19;;:28;;;;8122:7;8095;:23;;;:34;;;;;;;;;;;8180:5;;;;;;;;;;;:18;;;8199:10;8211:4;8217:7;8180:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8180:45:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8180:45:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8180:45:2;;;;;;;;;;;;;;;;8172:54;;;;;;;;8315:6;;;;;;;;;;;:14;;;8330:6;8315:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8315:22:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8315:22:2;;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;8315:22:2;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8281:56;;;;;;;;;;;;;;8418:10;8348:81;;8359:12;8348:81;;;;8373:6;8381:5;;8388:13;8403;8348:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8442:6;8435:13;;6887:1566;;;;;;;;;;;:::o;11243:706::-;11312:4;11324:16;11343:8;:22;11352:12;11343:22;;;;;;;;;;;;;;;;;:34;;;11324:53;;11639:24;11650:12;11639:10;:24::i;:::-;:117;;;;;11753:3;11710:8;:22;11719:12;11710:22;;;;;;;;;;;;;;;;;:40;;;:46;11639:117;:192;;;;;11804:27;11818:12;11804:13;:27::i;:::-;11803:28;11639:192;:264;;;;;11857:1;11842:11;:16;:60;;;;11898:4;11862:40;;:10;:23;11873:11;11862:23;;;;;;;;;;;:32;;;;;;;;;;;;:40;;;11842:60;11639:264;11591:335;;;11919:4;11912:11;;;;11591:335;11939:5;11932:12;;11243:706;;;;;:::o;13187:233::-;13262:4;13274:16;13293:8;:22;13302:12;13293:22;;;;;;;;;;;;;;;;;:34;;;13274:53;;13342:29;13358:12;13342:15;:29::i;:::-;13334:38;;;;;;;;13386:6;;;;;;;;;;;:16;;;13403:11;13386:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13386:29:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13386:29:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13386:29:2;;;;;;;;;;;;;;;;13379:36;;13187:233;;;;:::o;9360:907::-;9652:16;9736:11;9583:5;9531:57;;:10;:24;9542:12;9531:24;;;;;;;;;;;:36;;:48;9568:10;9531:48;;;;;;;;;;;;;;;;;;;;;;;;;:57;;;9523:66;;;;;;;;9640:4;9603:41;;:10;:24;9614:12;9603:24;;;;;;;;;;;:33;;;;;;;;;;;;:41;;;9595:50;;;;;;;;9671:6;;;;;;;;;;;:26;;;9698:10;9710:12;9724:5;9671:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9671:59:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9671:59:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9671:59:2;;;;;;;;;;;;;;;;9652:78;;9750:44;9762:10;9774:12;9788:5;9750:11;:44::i;:::-;9736:58;;9984:11;9944:10;:24;9955:12;9944:24;;;;;;;;;;;:36;;;:51;;;;;;;;;;;10040:6;10001:10;:24;10012:12;10001:24;;;;;;;;;;;:35;;;:45;;;;;;;;;;;10153:4;10102:10;:24;10113:12;10102:24;;;;;;;;;;;:36;;:48;10139:10;10102:48;;;;;;;;;;;;;;;;:55;;;;;;;;;;;;;;;;;;10172:5;;;;;;;;;;;:14;;;10187:10;10199:6;10172:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10172:34:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10172:34:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10172:34:2;;;;;;;;;;;;;;;;10164:43;;;;;;;;10251:10;10214:48;;10229:12;10214:48;10243:6;10214:48;;;;;;;;;;;;;;;;;;9360:907;;;;:::o;3679:693::-;3918:23;3768:27;3782:12;3768:13;:27::i;:::-;3767:28;3759:37;;;;;;;;3811:24;3822:12;3811:10;:24::i;:::-;3810:25;3802:34;;;;;;;;3861:13;;;;;;;;;;;:17;;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3861:31:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3861:31:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3861:31:2;;;;;;;;;;;;;;;;3850:7;:42;;3842:51;;;;;;;;3944:8;:22;3953:12;3944:22;;;;;;;;;;;;;;;;;3918:48;;3988:10;3972:7;:13;;;:26;;;;;;;;;;;;;;;;;;4066:55;4086:13;;;;;;;;;;;:17;;;:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4086:34:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4086:34:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4086:34:2;;;;;;;;;;;;;;;;4066:15;:19;;:55;;;;:::i;:::-;4038:7;:25;;:83;;;;4153:7;4127;:23;;:33;;;;4230:5;;;;;;;;;;;:18;;;4249:7;:13;;;;;;;;;;;;4264:4;4270:7;4230:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4230:48:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4230:48:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4230:48:2;;;;;;;;;;;;;;;;4222:57;;;;;;;;4356:10;4286:81;;4299:12;4286:81;;;;4313:7;4322;:25;;;4349:5;;4286:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3679:693;;;;;:::o;8682:268::-;8743:30;8760:12;8743:16;:30::i;:::-;8739:207;;;8783:34;8804:12;8783:20;:34::i;:::-;8739:207;;;8834:36;8857:12;8834:22;:36::i;:::-;8830:116;;;8880:30;8897:12;8880:16;:30::i;:::-;8830:116;;;8931:8;;;8830:116;8739:207;8682:268;:::o;12407:138::-;12470:11;12539:1;12496:8;:22;12505:12;12496:22;;;;;;;;;;;;;;;;;:40;;;:44;12489:51;;12407:138;;;:::o;2259:44::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14259:145::-;14336:4;14355:10;:24;14366:12;14355:24;;;;;;;;;;;:36;;:44;14392:6;14355:44;;;;;;;;;;;;;;;;;;;;;;;;;14348:51;;14259:145;;;;:::o;10723:357::-;10814:4;10828:16;10889:15;10948:16;10847:10;:24;10858:12;10847:24;;;;;;;;;;;:36;;;10828:55;;10907:10;:24;10918:12;10907:24;;;;;;;;;;;:35;;;10889:53;;10967:6;;;;;;;;;;;:26;;;10994:6;11002:12;11016:5;10967:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10967:55:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10967:55:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10967:55:2;;;;;;;;;;;;;;;;10948:74;;11064:11;11050:10;11036:11;:24;11035:40;;;;;;;;11028:47;;10723:357;;;;;;;;:::o;2363:43::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;13598:446::-;13663:4;13684:10;:24;13695:12;13684:24;;;;;;;;;;;:33;;;;;;;;;;;;13683:34;:68;;;;;13721:6;;;;;;;;;;;:16;;;13738:12;13721:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13721:30:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13721:30:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13721:30:2;;;;;;;;;;;;;;;;13683:68;13675:77;;;;;;;;13893:1;13830:6;;;;;;;;;;;:45;;;13876:12;13830:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13830:59:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13830:59:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13830:59:2;;;;;;;;;;;;;;;;:64;13826:126;;;13915:10;:24;13926:12;13915:24;;;;;;;;;;;:30;;;13911:1;:34;13904:41;;;;13826:126;14004:10;:24;14015:12;14004:24;;;;;;;;;;;:35;;;13970:10;:24;13981:12;13970:24;;;;;;;;;;;:30;;;13966:1;:34;13965:74;13958:81;;13598:446;;;;:::o;2492:34::-;;;;;;;;;;;;;:::o;2433:27::-;;;;;;;;;;;;;:::o;2464:24::-;;;;;;;;;;;;;:::o;16698:631::-;16756:23;17058:13;17093:20;16782:8;:22;16791:12;16782:22;;;;;;;;;;;;;;;;;16756:48;;16890:7;:19;;;;;;;;;;;;16886:123;;;16935:12;16919:29;;;;;;;;;;;;;16886:123;;;16989:12;16969:33;;;;;;;;;;;;;16886:123;17074:7;:13;;;;;;;;;;;;17058:29;;17116:7;:23;;;17093:46;;17152:8;:22;17161:12;17152:22;;;;;;;;;;;;;;;;;;17145:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17260:1;17242:15;:19;17238:87;;;17279:5;;;;;;;;;;;:14;;;17294:5;17301:15;17279:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17279:38:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17279:38:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;17279:38:2;;;;;;;;;;;;;;;;17271:47;;;;;;;;17238:87;16698:631;;;;:::o;680:133:8:-;742:7;757:9;773:1;769;:5;757:17;;792:1;787;:6;;780:14;;;;;;807:1;800:8;;680:133;;;;;:::o;16336:200:2:-;16407:8;:22;16416:12;16407:22;;;;;;;;;;;;;;;;;:34;;;;;;;;;;;;16406:35;16402:83;;;16469:12;16445:37;;;;;;;;;;;;;16402:83;16527:4;16490:8;:22;16499:12;16490:22;;;;;;;;;;;;;;;;;:34;;;:41;;;;;;;;;;;;;;;;;;16336:200;:::o;14728:1274::-;14790:16;14964:11;14809:8;:22;14818:12;14809:22;;;;;;;;;;;;;;;;;:34;;;14790:53;;14978:28;14994:11;14978:15;:28::i;:::-;14964:42;;15094:4;15059:10;:23;15070:11;15059:23;;;;;;;;;;;:32;;;:39;;;;;;;;;;;;;;;;;;15230:6;;;;;;;;;;;:45;;;15276:11;15230:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15230:58:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15230:58:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15230:58:2;;;;;;;;;;;;;;;;15192:10;:23;15203:11;15192:23;;;;;;;;;;;:35;;:96;;;;15329:6;;;;;;;;;;;:15;;;15345:11;15329:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15329:28:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15329:28:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15329:28:2;;;;;;;;;;;;;;;;15325:673;;;15367:34;15388:12;15367:20;:34::i;:::-;15518:6;15476:8;:22;15485:12;15476:22;;;;;;;;;;;;;;;;;:38;;;:48;;;;;;;;;;;15564:11;15550:12;15533:116;;;;15577:10;:23;15588:11;15577:23;;;;;;;;;;;:34;;;15613:10;:23;15624:11;15613:23;;;;;;;;;;;:35;;;15533:116;;;;;;;;;;;;;;;;;;;;;;;;15325:673;;;15715:26;15728:12;15715;:26::i;:::-;15804:5;;;;;;;;;;;:14;;;15819:10;:23;15830:11;15819:23;;;;;;;;;;;:34;;;;;;;;;;;;15855:6;15804:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15804:58:2;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15804:58:2;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15804:58:2;;;;;;;;;;;;;;;;15796:67;;;;;;;;15906:11;15892:12;15872:119;;;;15919:10;:23;15930:11;15919:23;;;;;;;;;;;:34;;;15955:10;:23;15966:11;15955:23;;;;;;;;;;;:35;;;15872:119;;;;;;;;;;;;;;;;;;;;;;;;15325:673;14728:1274;;;:::o", - "source": "pragma solidity 0.4.24;\n\nimport \"tokens/eip20/EIP20Interface.sol\";\nimport \"./Parameterizer.sol\";\nimport \"plcrvoting/PLCRVoting.sol\";\nimport \"zeppelin/math/SafeMath.sol\";\n\ncontract Registry {\n\n // ------\n // EVENTS\n // ------\n\n event _Application(bytes32 indexed listingHash, uint deposit, uint appEndDate, string data, address indexed applicant);\n event _Challenge(bytes32 indexed listingHash, uint challengeID, string data, uint commitEndDate, uint revealEndDate, address indexed challenger);\n event _Deposit(bytes32 indexed listingHash, uint added, uint newTotal, address indexed owner);\n event _Withdrawal(bytes32 indexed listingHash, uint withdrew, uint newTotal, address indexed owner);\n event _ApplicationWhitelisted(bytes32 indexed listingHash);\n event _ApplicationRemoved(bytes32 indexed listingHash);\n event _ListingRemoved(bytes32 indexed listingHash);\n event _ListingWithdrawn(bytes32 indexed listingHash);\n event _TouchAndRemoved(bytes32 indexed listingHash);\n event _ChallengeFailed(bytes32 indexed listingHash, uint indexed challengeID, uint rewardPool, uint totalTokens);\n event _ChallengeSucceeded(bytes32 indexed listingHash, uint indexed challengeID, uint rewardPool, uint totalTokens);\n event _RewardClaimed(uint indexed challengeID, uint reward, address indexed voter);\n\n using SafeMath for uint;\n\n struct Listing {\n uint applicationExpiry; // Expiration date of apply stage\n bool whitelisted; // Indicates registry status\n address owner; // Owner of Listing\n uint unstakedDeposit; // Number of tokens in the listing not locked in a challenge\n uint challengeID; // Corresponds to a PollID in PLCRVoting\n }\n\n struct Challenge {\n uint rewardPool; // (remaining) Pool of tokens to be distributed to winning voters\n address challenger; // Owner of Challenge\n bool resolved; // Indication of if challenge is resolved\n uint stake; // Number of tokens at stake for either party during challenge\n uint totalTokens; // (remaining) Number of tokens used in voting by the winning side\n mapping(address => bool) tokenClaims; // Indicates whether a voter has claimed a reward yet\n }\n\n // Maps challengeIDs to associated challenge data\n mapping(uint => Challenge) public challenges;\n\n // Maps listingHashes to associated listingHash data\n mapping(bytes32 => Listing) public listings;\n\n // Global Variables\n EIP20Interface public token;\n PLCRVoting public voting;\n Parameterizer public parameterizer;\n string public name;\n\n // ------------\n // CONSTRUCTOR:\n // ------------\n\n /**\n @dev Contructor Sets the addresses for token, voting, and parameterizer\n @param _tokenAddr Address of the TCR's intrinsic ERC20 token\n @param _plcrAddr Address of a PLCR voting contract for the provided token\n @param _paramsAddr Address of a Parameterizer contract\n */\n function Registry(\n address _tokenAddr,\n address _plcrAddr,\n address _paramsAddr,\n string _name\n ) public\n {\n token = EIP20Interface(_tokenAddr);\n voting = PLCRVoting(_plcrAddr);\n parameterizer = Parameterizer(_paramsAddr);\n name = _name;\n }\n\n // --------------------\n // PUBLISHER INTERFACE:\n // --------------------\n\n /**\n @dev Allows a user to start an application. Takes tokens from user and sets\n apply stage end time.\n @param _listingHash The hash of a potential listing a user is applying to add to the registry\n @param _amount The number of ERC20 tokens a user is willing to potentially stake\n @param _data Extra data relevant to the application. Think IPFS hashes.\n */\n function apply(bytes32 _listingHash, uint _amount, string _data) external {\n require(!isWhitelisted(_listingHash));\n require(!appWasMade(_listingHash));\n require(_amount >= parameterizer.get(\"minDeposit\"));\n\n // Sets owner\n Listing storage listing = listings[_listingHash];\n listing.owner = msg.sender;\n\n // Sets apply stage end time\n listing.applicationExpiry = block.timestamp.add(parameterizer.get(\"applyStageLen\"));\n listing.unstakedDeposit = _amount;\n\n // Transfers tokens from user to Registry contract\n require(token.transferFrom(listing.owner, this, _amount));\n\n _Application(_listingHash, _amount, listing.applicationExpiry, _data, msg.sender);\n }\n\n /**\n @dev Allows the owner of a listingHash to increase their unstaked deposit.\n @param _listingHash A listingHash msg.sender is the owner of\n @param _amount The number of ERC20 tokens to increase a user's unstaked deposit\n */\n function deposit(bytes32 _listingHash, uint _amount) external {\n Listing storage listing = listings[_listingHash];\n\n require(listing.owner == msg.sender);\n\n listing.unstakedDeposit += _amount;\n require(token.transferFrom(msg.sender, this, _amount));\n\n _Deposit(_listingHash, _amount, listing.unstakedDeposit, msg.sender);\n }\n\n /**\n @dev Allows the owner of a listingHash to decrease their unstaked deposit.\n @param _listingHash A listingHash msg.sender is the owner of.\n @param _amount The number of ERC20 tokens to withdraw from the unstaked deposit.\n */\n function withdraw(bytes32 _listingHash, uint _amount) external {\n Listing storage listing = listings[_listingHash];\n\n require(listing.owner == msg.sender);\n require(_amount <= listing.unstakedDeposit);\n require(listing.unstakedDeposit - _amount >= parameterizer.get(\"minDeposit\"));\n\n listing.unstakedDeposit -= _amount;\n require(token.transfer(msg.sender, _amount));\n\n _Withdrawal(_listingHash, _amount, listing.unstakedDeposit, msg.sender);\n }\n\n /**\n @dev Allows the owner of a listingHash to remove the listingHash from the whitelist\n Returns all tokens to the owner of the listingHash\n @param _listingHash A listingHash msg.sender is the owner of.\n */\n function exit(bytes32 _listingHash) external {\n Listing storage listing = listings[_listingHash];\n\n require(msg.sender == listing.owner);\n require(isWhitelisted(_listingHash));\n\n // Cannot exit during ongoing challenge\n require(listing.challengeID == 0 || challenges[listing.challengeID].resolved);\n\n // Remove listingHash & return tokens\n resetListing(_listingHash);\n _ListingWithdrawn(_listingHash);\n }\n\n // -----------------------\n // TOKEN HOLDER INTERFACE:\n // -----------------------\n\n /**\n @dev Starts a poll for a listingHash which is either in the apply stage or\n already in the whitelist. Tokens are taken from the challenger and the\n applicant's deposits are locked.\n @param _listingHash The listingHash being challenged, whether listed or in application\n @param _data Extra data relevant to the challenge. Think IPFS hashes.\n */\n function challenge(bytes32 _listingHash, string _data) external returns (uint challengeID) {\n Listing storage listing = listings[_listingHash];\n uint deposit = parameterizer.get(\"minDeposit\");\n\n // Listing must be in apply stage or already on the whitelist\n require(appWasMade(_listingHash) || listing.whitelisted);\n // Prevent multiple challenges\n require(listing.challengeID == 0 || challenges[listing.challengeID].resolved);\n\n if (listing.unstakedDeposit < deposit) {\n // Not enough tokens, listingHash auto-delisted\n resetListing(_listingHash);\n _TouchAndRemoved(_listingHash);\n return 0;\n }\n\n // Starts poll\n uint pollID = voting.startPoll(\n parameterizer.get(\"voteQuorum\"),\n parameterizer.get(\"commitStageLen\"),\n parameterizer.get(\"revealStageLen\")\n );\n\n challenges[pollID] = Challenge({\n challenger: msg.sender,\n rewardPool: ((100 - parameterizer.get(\"dispensationPct\")) * deposit) / 100,\n stake: deposit,\n resolved: false,\n totalTokens: 0\n });\n\n // Updates listingHash to store most recent challenge\n listing.challengeID = pollID;\n\n // Locks tokens for listingHash during challenge\n listing.unstakedDeposit -= deposit;\n\n // Takes tokens from challenger\n require(token.transferFrom(msg.sender, this, deposit));\n\n uint commitEndDate;\n uint revealEndDate;\n (commitEndDate, revealEndDate,) = voting.pollMap(pollID);\n \n _Challenge(_listingHash, pollID, _data, commitEndDate, revealEndDate, msg.sender);\n return pollID;\n }\n\n /**\n @dev Updates a listingHash's status from 'application' to 'listing' or resolves\n a challenge if one exists.\n @param _listingHash The listingHash whose status is being updated\n */\n function updateStatus(bytes32 _listingHash) public {\n if (canBeWhitelisted(_listingHash)) {\n whitelistApplication(_listingHash);\n } else if (challengeCanBeResolved(_listingHash)) {\n resolveChallenge(_listingHash);\n } else {\n revert();\n }\n }\n\n // ----------------\n // TOKEN FUNCTIONS:\n // ----------------\n\n /**\n @dev Called by a voter to claim their reward for each completed vote. Someone\n must call updateStatus() before this can be called.\n @param _challengeID The PLCR pollID of the challenge a reward is being claimed for\n @param _salt The salt of a voter's commit hash in the given poll\n */\n function claimReward(uint _challengeID, uint _salt) public {\n // Ensures the voter has not already claimed tokens and challenge results have been processed\n require(challenges[_challengeID].tokenClaims[msg.sender] == false);\n require(challenges[_challengeID].resolved == true);\n\n uint voterTokens = voting.getNumPassingTokens(msg.sender, _challengeID, _salt);\n uint reward = voterReward(msg.sender, _challengeID, _salt);\n\n // Subtracts the voter's information to preserve the participation ratios\n // of other voters compared to the remaining pool of rewards\n challenges[_challengeID].totalTokens -= voterTokens;\n challenges[_challengeID].rewardPool -= reward;\n\n // Ensures a voter cannot claim tokens again\n challenges[_challengeID].tokenClaims[msg.sender] = true;\n\n require(token.transfer(msg.sender, reward));\n\n _RewardClaimed(_challengeID, reward, msg.sender);\n }\n\n // --------\n // GETTERS:\n // --------\n\n /**\n @dev Calculates the provided voter's token reward for the given poll.\n @param _voter The address of the voter whose reward balance is to be returned\n @param _challengeID The pollID of the challenge a reward balance is being queried for\n @param _salt The salt of the voter's commit hash in the given poll\n @return The uint indicating the voter's reward\n */\n function voterReward(address _voter, uint _challengeID, uint _salt)\n public view returns (uint)\n {\n uint totalTokens = challenges[_challengeID].totalTokens;\n uint rewardPool = challenges[_challengeID].rewardPool;\n uint voterTokens = voting.getNumPassingTokens(_voter, _challengeID, _salt);\n return (voterTokens * rewardPool) / totalTokens;\n }\n\n /**\n @dev Determines whether the given listingHash be whitelisted.\n @param _listingHash The listingHash whose status is to be examined\n */\n function canBeWhitelisted(bytes32 _listingHash) view public returns (bool) {\n uint challengeID = listings[_listingHash].challengeID;\n\n // Ensures that the application was made,\n // the application period has ended,\n // the listingHash can be whitelisted,\n // and either: the challengeID == 0, or the challenge has been resolved.\n if (\n /* solium-disable-next-line */\n appWasMade(_listingHash) &&\n /* solium-disable-next-line */\n listings[_listingHash].applicationExpiry < now &&\n /* solium-disable-next-line */\n !isWhitelisted(_listingHash) &&\n (challengeID == 0 || challenges[challengeID].resolved == true)\n ) { return true; }\n\n return false;\n }\n\n /**\n @dev Returns true if the provided listingHash is whitelisted\n @param _listingHash The listingHash whose status is to be examined\n */\n function isWhitelisted(bytes32 _listingHash) view public returns (bool whitelisted) {\n return listings[_listingHash].whitelisted;\n }\n\n /**\n @dev Returns true if apply was called for this listingHash\n @param _listingHash The listingHash whose status is to be examined\n */\n function appWasMade(bytes32 _listingHash) view public returns (bool exists) {\n return listings[_listingHash].applicationExpiry > 0;\n }\n\n /**\n @dev Returns true if the application/listingHash has an unresolved challenge\n @param _listingHash The listingHash whose status is to be examined\n */\n function challengeExists(bytes32 _listingHash) view public returns (bool) {\n uint challengeID = listings[_listingHash].challengeID;\n\n return (listings[_listingHash].challengeID > 0 && !challenges[challengeID].resolved);\n }\n\n /**\n @dev Determines whether voting has concluded in a challenge for a given\n listingHash. Throws if no challenge exists.\n @param _listingHash A listingHash with an unresolved challenge\n */\n function challengeCanBeResolved(bytes32 _listingHash) view public returns (bool) {\n uint challengeID = listings[_listingHash].challengeID;\n\n require(challengeExists(_listingHash));\n\n return voting.pollEnded(challengeID);\n }\n\n /**\n @dev Determines the number of tokens awarded to the winning party in a challenge.\n @param _challengeID The challengeID to determine a reward for\n */\n function determineReward(uint _challengeID) public view returns (uint) {\n require(!challenges[_challengeID].resolved && voting.pollEnded(_challengeID));\n\n // Edge case, nobody voted, give all tokens to the challenger.\n if (voting.getTotalNumberOfTokensForWinningOption(_challengeID) == 0) {\n return 2 * challenges[_challengeID].stake;\n }\n\n return (2 * challenges[_challengeID].stake) - challenges[_challengeID].rewardPool;\n }\n\n /**\n @dev Getter for Challenge tokenClaims mappings\n @param _challengeID The challengeID to query\n @param _voter The voter whose claim status to query for the provided challengeID\n */\n function tokenClaims(uint _challengeID, address _voter) public view returns (bool) {\n return challenges[_challengeID].tokenClaims[_voter];\n }\n\n // ----------------\n // PRIVATE FUNCTIONS:\n // ----------------\n\n /**\n @dev Determines the winner in a challenge. Rewards the winner tokens and\n either whitelists or de-whitelists the listingHash.\n @param _listingHash A listingHash with a challenge that is to be resolved\n */\n function resolveChallenge(bytes32 _listingHash) private {\n uint challengeID = listings[_listingHash].challengeID;\n\n // Calculates the winner's reward,\n // which is: (winner's full stake) + (dispensationPct * loser's stake)\n uint reward = determineReward(challengeID);\n\n // Sets flag on challenge being processed\n challenges[challengeID].resolved = true;\n\n // Stores the total tokens used for voting by the winning side for reward purposes\n challenges[challengeID].totalTokens = voting.getTotalNumberOfTokensForWinningOption(challengeID);\n\n // Case: challenge failed\n if (voting.isPassed(challengeID)) {\n whitelistApplication(_listingHash);\n // Unlock stake so that it can be retrieved by the applicant\n listings[_listingHash].unstakedDeposit += reward;\n\n _ChallengeFailed(_listingHash, challengeID, challenges[challengeID].rewardPool, challenges[challengeID].totalTokens);\n } else { // Case: challenge succeeded or nobody voted\n resetListing(_listingHash);\n // Transfer the reward to the challenger\n require(token.transfer(challenges[challengeID].challenger, reward));\n\n _ChallengeSucceeded(_listingHash, challengeID, challenges[challengeID].rewardPool, challenges[challengeID].totalTokens);\n }\n }\n\n /**\n @dev Called by updateStatus() if the applicationExpiry date passed without a\n challenge being made. Called by resolveChallenge() if an\n application/listing beat a challenge.\n @param _listingHash The listingHash of an application/listingHash to be whitelisted\n */\n function whitelistApplication(bytes32 _listingHash) private {\n if (!listings[_listingHash].whitelisted) { _ApplicationWhitelisted(_listingHash); }\n listings[_listingHash].whitelisted = true;\n }\n\n /**\n @dev Deletes a listingHash from the whitelist and transfers tokens back to owner\n @param _listingHash The listing hash to delete\n */\n function resetListing(bytes32 _listingHash) private {\n Listing storage listing = listings[_listingHash];\n\n // Emit events before deleting listing to check whether is whitelisted\n if (listing.whitelisted) {\n _ListingRemoved(_listingHash);\n } else {\n _ApplicationRemoved(_listingHash);\n }\n\n // Deleting listing to prevent reentry\n address owner = listing.owner;\n uint unstakedDeposit = listing.unstakedDeposit;\n delete listings[_listingHash];\n\n // Transfers any remaining balance back to the owner\n if (unstakedDeposit > 0) {\n require(token.transfer(owner, unstakedDeposit));\n }\n }\n}\n", - "sourcePath": "/home/rbharath/computable/contracts/Registry.sol", + "bytecode": "0x60806040523480156200001157600080fd5b50604051620033da380380620033da8339810180604052810190808051906020019092919080519060200190929190805190602001909291908051820192919050505083600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600590805190602001906200012f9291906200013a565b5050505050620001e9565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200017d57805160ff1916838001178555620001ae565b82800160010185558215620001ae579182015b82811115620001ad57825182559160200191906001019062000190565b5b509050620001bd9190620001c1565b5090565b620001e691905b80821115620001e2576000816000905550600101620001c8565b5090565b90565b6131e180620001f96000396000f30060806040526004361061011d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806301a5e3fe14610122578063040cf0201461016b57806306fdde03146101a65780630ca36263146102365780631b7bbecb146102675780631de26e16146102b057806343cffefe146102eb578063691a38ab1461034857806377609a411461039157806386bb8f37146103da57806389bb55c7146104115780638a59eb56146104645780638cf8151f146104955780638f1d3776146104de578063a5ba3b1e1461056b578063a7aad3db146105d0578063c18b8db41461063b578063c8187cf1146106cc578063e1e3f9151461070d578063fc0c546a14610764578063fce1ccca146107bb575b600080fd5b34801561012e57600080fd5b506101516004803603810190808035600019169060200190929190505050610812565b604051808215151515815260200191505060405180910390f35b34801561017757600080fd5b506101a4600480360381019080803560001916906020019092919080359060200190929190505050610847565b005b3480156101b257600080fd5b506101bb610b69565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101fb5780820151818401526020810190506101e0565b50505050905090810190601f1680156102285780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561024257600080fd5b506102656004803603810190808035600019169060200190929190505050610c07565b005b34801561027357600080fd5b506102966004803603810190808035600019169060200190929190505050610d17565b604051808215151515815260200191505060405180910390f35b3480156102bc57600080fd5b506102e9600480360381019080803560001916906020019092919080359060200190929190505050610d91565b005b3480156102f757600080fd5b506103326004803603810190808035600019169060200190929190803590602001908201803590602001919091929391929390505050610fc3565b6040518082815260200191505060405180910390f35b34801561035457600080fd5b506103776004803603810190808035600019169060200190929190505050611a51565b604051808215151515815260200191505060405180910390f35b34801561039d57600080fd5b506103c06004803603810190808035600019169060200190929190505050611b0f565b604051808215151515815260200191505060405180910390f35b3480156103e657600080fd5b5061040f6004803603810190808035906020019092919080359060200190929190505050611c1b565b005b34801561041d57600080fd5b50610462600480360381019080803560001916906020019092919080359060200190929190803590602001908201803590602001919091929391929390505050611fed565b005b34801561047057600080fd5b50610493600480360381019080803560001916906020019092919050505061248f565b005b3480156104a157600080fd5b506104c460048036038101908080356000191690602001909291905050506124d0565b604051808215151515815260200191505060405180910390f35b3480156104ea57600080fd5b50610509600480360381019080803590602001909291905050506124fa565b604051808681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001841515151581526020018381526020018281526020019550505050505060405180910390f35b34801561057757600080fd5b506105b660048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061255d565b604051808215151515815260200191505060405180910390f35b3480156105dc57600080fd5b50610625600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291905050506125c7565b6040518082815260200191505060405180910390f35b34801561064757600080fd5b5061066a6004803603810190808035600019169060200190929190505050612721565b60405180868152602001851515151581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019550505050505060405180910390f35b3480156106d857600080fd5b506106f760048036038101908080359060200190929190505050612784565b6040518082815260200191505060405180910390f35b34801561071957600080fd5b506107226129b5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561077057600080fd5b506107796129db565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156107c757600080fd5b506107d0612a01565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600060016000836000191660001916815260200190815260200160002060010160009054906101000a900460ff169050919050565b600060016000846000191660001916815260200190815260200160002090503373ffffffffffffffffffffffffffffffffffffffff168160010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156108c457600080fd5b806002015482111515156108d757600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f6d696e4465706f73697400000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561099957600080fd5b505af11580156109ad573d6000803e3d6000fd5b505050506040513d60208110156109c357600080fd5b810190808051906020019092919050505082826002015403101515156109e857600080fd5b818160020160008282540392505081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610abf57600080fd5b505af1158015610ad3573d6000803e3d6000fd5b505050506040513d6020811015610ae957600080fd5b81019080805190602001909291905050501515610b0557600080fd5b3373ffffffffffffffffffffffffffffffffffffffff1683600019167f9d9ed58779badf90c56d72f3b54def9f73dc875d8f86416c8334b55328c6c106848460020154604051808381526020018281526020019250505060405180910390a3505050565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bff5780601f10610bd457610100808354040283529160200191610bff565b820191906000526020600020905b815481529060010190602001808311610be257829003601f168201915b505050505081565b600060016000836000191660001916815260200190815260200160002090508060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610c8457600080fd5b610c8d82610812565b1515610c9857600080fd5b600081600301541480610cce57506000808260030154815260200190815260200160002060010160149054906101000a900460ff165b1515610cd957600080fd5b610ce282612a27565b81600019167f8a51904a50ce4451be09dc08242bd2d5565b05cf0f4f5aa88c77f96fdf538b4260405160405180910390a25050565b600080600160008460001916600019168152602001908152602001600020600301549050600060016000856000191660001916815260200190815260200160002060030154118015610d89575060008082815260200190815260200160002060010160149054906101000a900460ff16155b915050919050565b600060016000846000191660001916815260200190815260200160002090503373ffffffffffffffffffffffffffffffffffffffff168160010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515610e0e57600080fd5b818160020160008282540192505081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610f1957600080fd5b505af1158015610f2d573d6000803e3d6000fd5b505050506040513d6020811015610f4357600080fd5b81019080805190602001909291905050501515610f5f57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff1683600019167ff63fcfb210c709154f0260502b2586fcee5550d17dc828be3127ccdedec620ab848460020154604051808381526020018281526020019250505060405180910390a3505050565b600080600080600080600160008a600019166000191681526020019081526020016000209450600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f6d696e4465706f73697400000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b505050506040513d60208110156110d557600080fd5b810190808051906020019092919050505093506110f1896124d0565b8061110a57508460010160009054906101000a900460ff165b151561111557600080fd5b60008560030154148061114b57506000808660030154815260200190815260200160002060010160149054906101000a900460ff165b151561115657600080fd5b83856002015410156111a55761116b89612a27565b88600019167f4a9ee335af9e32f32f2229943dc7a0d3b5adf7e4c5c4062b372eae8c476d928660405160405180910390a260009550611a45565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166332ed3d60600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f766f746551756f72756d00000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156112a557600080fd5b505af11580156112b9573d6000803e3d6000fd5b505050506040513d60208110156112cf57600080fd5b8101908080519060200190929190505050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600e8152602001807f636f6d6d697453746167654c656e000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156113a257600080fd5b505af11580156113b6573d6000803e3d6000fd5b505050506040513d60208110156113cc57600080fd5b8101908080519060200190929190505050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600e8152602001807f72657665616c53746167654c656e000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561149f57600080fd5b505af11580156114b3573d6000803e3d6000fd5b505050506040513d60208110156114c957600080fd5b81019080805190602001909291905050506040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018381526020018281526020019350505050602060405180830381600087803b15801561153a57600080fd5b505af115801561154e573d6000803e3d6000fd5b505050506040513d602081101561156457600080fd5b8101908080519060200190929190505050925060a060405190810160405280606486600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600f8152602001807f64697370656e736174696f6e5063740000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561164857600080fd5b505af115801561165c573d6000803e3d6000fd5b505050506040513d602081101561167257600080fd5b81019080805190602001909291905050506064030281151561169057fe5b0481526020013373ffffffffffffffffffffffffffffffffffffffff16815260200160001515815260200185815260200160008152506000808581526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010160146101000a81548160ff0219169083151502179055506060820151816002015560808201518160030155905050828560030181905550838560020160008282540392505081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330876040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561187457600080fd5b505af1158015611888573d6000803e3d6000fd5b505050506040513d602081101561189e57600080fd5b810190808051906020019092919050505015156118ba57600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636148fed5846040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060a060405180830381600087803b15801561194b57600080fd5b505af115801561195f573d6000803e3d6000fd5b505050506040513d60a081101561197557600080fd5b81019080805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919050505090915090505080925081935050503373ffffffffffffffffffffffffffffffffffffffff1689600019167ff98a08756a3603420a080d66764f73deb1e30896c315cfed03e17f88f5eb30f7858b8b8787604051808681526020018060200184815260200183815260200182810382528686828181526020019250808284378201915050965050505050505060405180910390a38295505b50505050509392505050565b600080600160008460001916600019168152602001908152602001600020600301549050611a7e836124d0565b8015611aa757504260016000856000191660001916815260200190815260200160002060000154105b8015611ab95750611ab783610812565b155b8015611af657506000811480611af557506001151560008083815260200190815260200160002060010160149054906101000a900460ff161515145b5b15611b045760019150611b09565b600091505b50919050565b600080600160008460001916600019168152602001908152602001600020600301549050611b3c83610d17565b1515611b4757600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ee684830826040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015611bd857600080fd5b505af1158015611bec573d6000803e3d6000fd5b505050506040513d6020811015611c0257600080fd5b8101908080519060200190929190505050915050919050565b6000806000151560008086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515141515611c9057600080fd5b6001151560008086815260200190815260200160002060010160149054906101000a900460ff161515141515611cc557600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0693386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b158015611d9257600080fd5b505af1158015611da6573d6000803e3d6000fd5b505050506040513d6020811015611dbc57600080fd5b81019080805190602001909291905050509150611dda3385856125c7565b905081600080868152602001908152602001600020600301600082825403925050819055508060008086815260200190815260200160002060000160008282540392505081905550600160008086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611f5257600080fd5b505af1158015611f66573d6000803e3d6000fd5b505050506040513d6020811015611f7c57600080fd5b81019080805190602001909291905050501515611f9857600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16847f6f4c982acc31b0af2cf1dc1556f21c0325d893782d65e83c68a5534a33f59957836040518082815260200191505060405180910390a350505050565b6000611ff885610812565b15151561200457600080fd5b61200d856124d0565b15151561201957600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f6d696e4465706f73697400000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156120db57600080fd5b505af11580156120ef573d6000803e3d6000fd5b505050506040513d602081101561210557600080fd5b8101908080519060200190929190505050841015151561212457600080fd5b6001600086600019166000191681526020019081526020016000209050338160010160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550612293600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600d8152602001807f6170706c7953746167654c656e00000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561224957600080fd5b505af115801561225d573d6000803e3d6000fd5b505050506040513d602081101561227357600080fd5b810190808051906020019092919050505042612c8290919063ffffffff16565b8160000181905550838160020181905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1630876040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156123c157600080fd5b505af11580156123d5573d6000803e3d6000fd5b505050506040513d60208110156123eb57600080fd5b8101908080519060200190929190505050151561240757600080fd5b3373ffffffffffffffffffffffffffffffffffffffff1685600019167fa27f550c3c7a7c6d8369e5383fdc7a3b4850d8ce9e20066f9d496f6989f0086486846000015487876040518085815260200184815260200180602001828103825284848281815260200192508082843782019150509550505050505060405180910390a35050505050565b61249881611a51565b156124ab576124a681612c9e565b6124cd565b6124b481611b0f565b156124c7576124c281612d3b565b6124cc565b600080fd5b5b50565b60008060016000846000191660001916815260200190815260200160002060000154119050919050565b60006020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010160149054906101000a900460ff16908060020154908060030154905085565b600080600084815260200190815260200160002060040160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600080600080600080878152602001908152602001600020600301549250600080878152602001908152602001600020600001549150600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0698888886040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b1580156126ca57600080fd5b505af11580156126de573d6000803e3d6000fd5b505050506040513d60208110156126f457600080fd5b810190808051906020019092919050505090508282820281151561271457fe5b0493505050509392505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900460ff16908060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154905085565b600080600083815260200190815260200160002060010160149054906101000a900460ff1615801561287e5750600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ee684830836040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561284257600080fd5b505af1158015612856573d6000803e3d6000fd5b505050506040513d602081101561286c57600080fd5b81019080805190602001909291905050505b151561288957600080fd5b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a6846040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561291c57600080fd5b505af1158015612930573d6000803e3d6000fd5b505050506040513d602081101561294657600080fd5b8101908080519060200190929190505050141561297d576000808381526020019081526020016000206002015460020290506129b0565b60008083815260200190815260200160002060000154600080848152602001908152602001600020600201546002020390505b919050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600060016000856000191660001916815260200190815260200160002092508260010160009054906101000a900460ff1615612a965783600019167fd1ffb796b7108387b2f02adf47b4b81a1690cf2a190422c87a4f670780103e6360405160405180910390a2612ac8565b83600019167f2e5ec035f6eac8ff1cf7cdf36cfeca7c85413f9f67652dc2c13d20f337204a2660405160405180910390a25b8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150826002015490506001600085600019166000191681526020019081526020016000206000808201600090556001820160006101000a81549060ff02191690556001820160016101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905550506000811115612c7c57600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015612c3557600080fd5b505af1158015612c49573d6000803e3d6000fd5b505050506040513d6020811015612c5f57600080fd5b81019080805190602001909291905050501515612c7b57600080fd5b5b50505050565b60008183019050828110151515612c9557fe5b80905092915050565b60016000826000191660001916815260200190815260200160002060010160009054906101000a900460ff161515612d025780600019167fa7bc1d57d9006d9d248707c7b6828c1bab8c51719cc06d78c82a3ee891ef967c60405160405180910390a25b6001806000836000191660001916815260200190815260200160002060010160006101000a81548160ff02191690831515021790555050565b600080600160008460001916600019168152602001908152602001600020600301549150612d6882612784565b9050600160008084815260200190815260200160002060010160146101000a81548160ff021916908315150217905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a6836040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015612e2957600080fd5b505af1158015612e3d573d6000803e3d6000fd5b505050506040513d6020811015612e5357600080fd5b810190808051906020019092919050505060008084815260200190815260200160002060030181905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166349403183836040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015612f0e57600080fd5b505af1158015612f22573d6000803e3d6000fd5b505050506040513d6020811015612f3857600080fd5b810190808051906020019092919050505015612ff757612f5783612c9e565b80600160008560001916600019168152602001908152602001600020600201600082825401925050819055508183600019167fc4497224aa78dd50c9b3e344aab02596201ca1e6dca4057a91a6c02f83f4f6c16000808681526020019081526020016000206000015460008087815260200190815260200160002060030154604051808381526020018281526020019250505060405180910390a36131b0565b61300083612a27565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60008085815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156130fa57600080fd5b505af115801561310e573d6000803e3d6000fd5b505050506040513d602081101561312457600080fd5b8101908080519060200190929190505050151561314057600080fd5b8183600019167f362a12431f779a2baff4f77f75ba7960ae993a5c41b425df11f7fd0af2b9cbe66000808681526020019081526020016000206000015460008087815260200190815260200160002060030154604051808381526020018281526020019250505060405180910390a35b5050505600a165627a7a723058208e19e1f1a28ad99ba4dcd3b291c4ef77a840fb7aafab5fdf9a47f06eecdb774b0029", + "deployedBytecode": "0x60806040526004361061011d576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806301a5e3fe14610122578063040cf0201461016b57806306fdde03146101a65780630ca36263146102365780631b7bbecb146102675780631de26e16146102b057806343cffefe146102eb578063691a38ab1461034857806377609a411461039157806386bb8f37146103da57806389bb55c7146104115780638a59eb56146104645780638cf8151f146104955780638f1d3776146104de578063a5ba3b1e1461056b578063a7aad3db146105d0578063c18b8db41461063b578063c8187cf1146106cc578063e1e3f9151461070d578063fc0c546a14610764578063fce1ccca146107bb575b600080fd5b34801561012e57600080fd5b506101516004803603810190808035600019169060200190929190505050610812565b604051808215151515815260200191505060405180910390f35b34801561017757600080fd5b506101a4600480360381019080803560001916906020019092919080359060200190929190505050610847565b005b3480156101b257600080fd5b506101bb610b69565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101fb5780820151818401526020810190506101e0565b50505050905090810190601f1680156102285780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561024257600080fd5b506102656004803603810190808035600019169060200190929190505050610c07565b005b34801561027357600080fd5b506102966004803603810190808035600019169060200190929190505050610d17565b604051808215151515815260200191505060405180910390f35b3480156102bc57600080fd5b506102e9600480360381019080803560001916906020019092919080359060200190929190505050610d91565b005b3480156102f757600080fd5b506103326004803603810190808035600019169060200190929190803590602001908201803590602001919091929391929390505050610fc3565b6040518082815260200191505060405180910390f35b34801561035457600080fd5b506103776004803603810190808035600019169060200190929190505050611a51565b604051808215151515815260200191505060405180910390f35b34801561039d57600080fd5b506103c06004803603810190808035600019169060200190929190505050611b0f565b604051808215151515815260200191505060405180910390f35b3480156103e657600080fd5b5061040f6004803603810190808035906020019092919080359060200190929190505050611c1b565b005b34801561041d57600080fd5b50610462600480360381019080803560001916906020019092919080359060200190929190803590602001908201803590602001919091929391929390505050611fed565b005b34801561047057600080fd5b50610493600480360381019080803560001916906020019092919050505061248f565b005b3480156104a157600080fd5b506104c460048036038101908080356000191690602001909291905050506124d0565b604051808215151515815260200191505060405180910390f35b3480156104ea57600080fd5b50610509600480360381019080803590602001909291905050506124fa565b604051808681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001841515151581526020018381526020018281526020019550505050505060405180910390f35b34801561057757600080fd5b506105b660048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061255d565b604051808215151515815260200191505060405180910390f35b3480156105dc57600080fd5b50610625600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001909291905050506125c7565b6040518082815260200191505060405180910390f35b34801561064757600080fd5b5061066a6004803603810190808035600019169060200190929190505050612721565b60405180868152602001851515151581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019550505050505060405180910390f35b3480156106d857600080fd5b506106f760048036038101908080359060200190929190505050612784565b6040518082815260200191505060405180910390f35b34801561071957600080fd5b506107226129b5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561077057600080fd5b506107796129db565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156107c757600080fd5b506107d0612a01565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600060016000836000191660001916815260200190815260200160002060010160009054906101000a900460ff169050919050565b600060016000846000191660001916815260200190815260200160002090503373ffffffffffffffffffffffffffffffffffffffff168160010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415156108c457600080fd5b806002015482111515156108d757600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f6d696e4465706f73697400000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561099957600080fd5b505af11580156109ad573d6000803e3d6000fd5b505050506040513d60208110156109c357600080fd5b810190808051906020019092919050505082826002015403101515156109e857600080fd5b818160020160008282540392505081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610abf57600080fd5b505af1158015610ad3573d6000803e3d6000fd5b505050506040513d6020811015610ae957600080fd5b81019080805190602001909291905050501515610b0557600080fd5b3373ffffffffffffffffffffffffffffffffffffffff1683600019167f9d9ed58779badf90c56d72f3b54def9f73dc875d8f86416c8334b55328c6c106848460020154604051808381526020018281526020019250505060405180910390a3505050565b60058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610bff5780601f10610bd457610100808354040283529160200191610bff565b820191906000526020600020905b815481529060010190602001808311610be257829003601f168201915b505050505081565b600060016000836000191660001916815260200190815260200160002090508060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610c8457600080fd5b610c8d82610812565b1515610c9857600080fd5b600081600301541480610cce57506000808260030154815260200190815260200160002060010160149054906101000a900460ff165b1515610cd957600080fd5b610ce282612a27565b81600019167f8a51904a50ce4451be09dc08242bd2d5565b05cf0f4f5aa88c77f96fdf538b4260405160405180910390a25050565b600080600160008460001916600019168152602001908152602001600020600301549050600060016000856000191660001916815260200190815260200160002060030154118015610d89575060008082815260200190815260200160002060010160149054906101000a900460ff16155b915050919050565b600060016000846000191660001916815260200190815260200160002090503373ffffffffffffffffffffffffffffffffffffffff168160010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141515610e0e57600080fd5b818160020160008282540192505081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015610f1957600080fd5b505af1158015610f2d573d6000803e3d6000fd5b505050506040513d6020811015610f4357600080fd5b81019080805190602001909291905050501515610f5f57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff1683600019167ff63fcfb210c709154f0260502b2586fcee5550d17dc828be3127ccdedec620ab848460020154604051808381526020018281526020019250505060405180910390a3505050565b600080600080600080600160008a600019166000191681526020019081526020016000209450600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f6d696e4465706f73697400000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156110ab57600080fd5b505af11580156110bf573d6000803e3d6000fd5b505050506040513d60208110156110d557600080fd5b810190808051906020019092919050505093506110f1896124d0565b8061110a57508460010160009054906101000a900460ff165b151561111557600080fd5b60008560030154148061114b57506000808660030154815260200190815260200160002060010160149054906101000a900460ff165b151561115657600080fd5b83856002015410156111a55761116b89612a27565b88600019167f4a9ee335af9e32f32f2229943dc7a0d3b5adf7e4c5c4062b372eae8c476d928660405160405180910390a260009550611a45565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166332ed3d60600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f766f746551756f72756d00000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156112a557600080fd5b505af11580156112b9573d6000803e3d6000fd5b505050506040513d60208110156112cf57600080fd5b8101908080519060200190929190505050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600e8152602001807f636f6d6d697453746167654c656e000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156113a257600080fd5b505af11580156113b6573d6000803e3d6000fd5b505050506040513d60208110156113cc57600080fd5b8101908080519060200190929190505050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600e8152602001807f72657665616c53746167654c656e000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561149f57600080fd5b505af11580156114b3573d6000803e3d6000fd5b505050506040513d60208110156114c957600080fd5b81019080805190602001909291905050506040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018381526020018281526020019350505050602060405180830381600087803b15801561153a57600080fd5b505af115801561154e573d6000803e3d6000fd5b505050506040513d602081101561156457600080fd5b8101908080519060200190929190505050925060a060405190810160405280606486600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600f8152602001807f64697370656e736174696f6e5063740000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561164857600080fd5b505af115801561165c573d6000803e3d6000fd5b505050506040513d602081101561167257600080fd5b81019080805190602001909291905050506064030281151561169057fe5b0481526020013373ffffffffffffffffffffffffffffffffffffffff16815260200160001515815260200185815260200160008152506000808581526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160010160146101000a81548160ff0219169083151502179055506060820151816002015560808201518160030155905050828560030181905550838560020160008282540392505081905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd3330876040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b15801561187457600080fd5b505af1158015611888573d6000803e3d6000fd5b505050506040513d602081101561189e57600080fd5b810190808051906020019092919050505015156118ba57600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16636148fed5846040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060a060405180830381600087803b15801561194b57600080fd5b505af115801561195f573d6000803e3d6000fd5b505050506040513d60a081101561197557600080fd5b81019080805190602001909291908051906020019092919080519060200190929190805190602001909291908051906020019092919050505090915090505080925081935050503373ffffffffffffffffffffffffffffffffffffffff1689600019167ff98a08756a3603420a080d66764f73deb1e30896c315cfed03e17f88f5eb30f7858b8b8787604051808681526020018060200184815260200183815260200182810382528686828181526020019250808284378201915050965050505050505060405180910390a38295505b50505050509392505050565b600080600160008460001916600019168152602001908152602001600020600301549050611a7e836124d0565b8015611aa757504260016000856000191660001916815260200190815260200160002060000154105b8015611ab95750611ab783610812565b155b8015611af657506000811480611af557506001151560008083815260200190815260200160002060010160149054906101000a900460ff161515145b5b15611b045760019150611b09565b600091505b50919050565b600080600160008460001916600019168152602001908152602001600020600301549050611b3c83610d17565b1515611b4757600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ee684830826040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015611bd857600080fd5b505af1158015611bec573d6000803e3d6000fd5b505050506040513d6020811015611c0257600080fd5b8101908080519060200190929190505050915050919050565b6000806000151560008086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515141515611c9057600080fd5b6001151560008086815260200190815260200160002060010160149054906101000a900460ff161515141515611cc557600080fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0693386866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b158015611d9257600080fd5b505af1158015611da6573d6000803e3d6000fd5b505050506040513d6020811015611dbc57600080fd5b81019080805190602001909291905050509150611dda3385856125c7565b905081600080868152602001908152602001600020600301600082825403925050819055508060008086815260200190815260200160002060000160008282540392505081905550600160008086815260200190815260200160002060040160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611f5257600080fd5b505af1158015611f66573d6000803e3d6000fd5b505050506040513d6020811015611f7c57600080fd5b81019080805190602001909291905050501515611f9857600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16847f6f4c982acc31b0af2cf1dc1556f21c0325d893782d65e83c68a5534a33f59957836040518082815260200191505060405180910390a350505050565b6000611ff885610812565b15151561200457600080fd5b61200d856124d0565b15151561201957600080fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600a8152602001807f6d696e4465706f73697400000000000000000000000000000000000000000000815250602001915050602060405180830381600087803b1580156120db57600080fd5b505af11580156120ef573d6000803e3d6000fd5b505050506040513d602081101561210557600080fd5b8101908080519060200190929190505050841015151561212457600080fd5b6001600086600019166000191681526020019081526020016000209050338160010160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550612293600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663693ec85e6040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180806020018281038252600d8152602001807f6170706c7953746167654c656e00000000000000000000000000000000000000815250602001915050602060405180830381600087803b15801561224957600080fd5b505af115801561225d573d6000803e3d6000fd5b505050506040513d602081101561227357600080fd5b810190808051906020019092919050505042612c8290919063ffffffff16565b8160000181905550838160020181905550600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1630876040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156123c157600080fd5b505af11580156123d5573d6000803e3d6000fd5b505050506040513d60208110156123eb57600080fd5b8101908080519060200190929190505050151561240757600080fd5b3373ffffffffffffffffffffffffffffffffffffffff1685600019167fa27f550c3c7a7c6d8369e5383fdc7a3b4850d8ce9e20066f9d496f6989f0086486846000015487876040518085815260200184815260200180602001828103825284848281815260200192508082843782019150509550505050505060405180910390a35050505050565b61249881611a51565b156124ab576124a681612c9e565b6124cd565b6124b481611b0f565b156124c7576124c281612d3b565b6124cc565b600080fd5b5b50565b60008060016000846000191660001916815260200190815260200160002060000154119050919050565b60006020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010160149054906101000a900460ff16908060020154908060030154905085565b600080600084815260200190815260200160002060040160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b600080600080600080878152602001908152602001600020600301549250600080878152602001908152602001600020600001549150600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663b43bd0698888886040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018281526020019350505050602060405180830381600087803b1580156126ca57600080fd5b505af11580156126de573d6000803e3d6000fd5b505050506040513d60208110156126f457600080fd5b810190808051906020019092919050505090508282820281151561271457fe5b0493505050509392505050565b60016020528060005260406000206000915090508060000154908060010160009054906101000a900460ff16908060010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154905085565b600080600083815260200190815260200160002060010160149054906101000a900460ff1615801561287e5750600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ee684830836040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561284257600080fd5b505af1158015612856573d6000803e3d6000fd5b505050506040513d602081101561286c57600080fd5b81019080805190602001909291905050505b151561288957600080fd5b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a6846040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b15801561291c57600080fd5b505af1158015612930573d6000803e3d6000fd5b505050506040513d602081101561294657600080fd5b8101908080519060200190929190505050141561297d576000808381526020019081526020016000206002015460020290506129b0565b60008083815260200190815260200160002060000154600080848152602001908152602001600020600201546002020390505b919050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600060016000856000191660001916815260200190815260200160002092508260010160009054906101000a900460ff1615612a965783600019167fd1ffb796b7108387b2f02adf47b4b81a1690cf2a190422c87a4f670780103e6360405160405180910390a2612ac8565b83600019167f2e5ec035f6eac8ff1cf7cdf36cfeca7c85413f9f67652dc2c13d20f337204a2660405160405180910390a25b8260010160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150826002015490506001600085600019166000191681526020019081526020016000206000808201600090556001820160006101000a81549060ff02191690556001820160016101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905550506000811115612c7c57600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015612c3557600080fd5b505af1158015612c49573d6000803e3d6000fd5b505050506040513d6020811015612c5f57600080fd5b81019080805190602001909291905050501515612c7b57600080fd5b5b50505050565b60008183019050828110151515612c9557fe5b80905092915050565b60016000826000191660001916815260200190815260200160002060010160009054906101000a900460ff161515612d025780600019167fa7bc1d57d9006d9d248707c7b6828c1bab8c51719cc06d78c82a3ee891ef967c60405160405180910390a25b6001806000836000191660001916815260200190815260200160002060010160006101000a81548160ff02191690831515021790555050565b600080600160008460001916600019168152602001908152602001600020600301549150612d6882612784565b9050600160008084815260200190815260200160002060010160146101000a81548160ff021916908315150217905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663053e71a6836040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015612e2957600080fd5b505af1158015612e3d573d6000803e3d6000fd5b505050506040513d6020811015612e5357600080fd5b810190808051906020019092919050505060008084815260200190815260200160002060030181905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166349403183836040518263ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040180828152602001915050602060405180830381600087803b158015612f0e57600080fd5b505af1158015612f22573d6000803e3d6000fd5b505050506040513d6020811015612f3857600080fd5b810190808051906020019092919050505015612ff757612f5783612c9e565b80600160008560001916600019168152602001908152602001600020600201600082825401925050819055508183600019167fc4497224aa78dd50c9b3e344aab02596201ca1e6dca4057a91a6c02f83f4f6c16000808681526020019081526020016000206000015460008087815260200190815260200160002060030154604051808381526020018281526020019250505060405180910390a36131b0565b61300083612a27565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb60008085815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b1580156130fa57600080fd5b505af115801561310e573d6000803e3d6000fd5b505050506040513d602081101561312457600080fd5b8101908080519060200190929190505050151561314057600080fd5b8183600019167f362a12431f779a2baff4f77f75ba7960ae993a5c41b425df11f7fd0af2b9cbe66000808681526020019081526020016000206000015460008087815260200190815260200160002060030154604051808381526020018281526020019250505060405180910390a35b5050505600a165627a7a723058208e19e1f1a28ad99ba4dcd3b291c4ef77a840fb7aafab5fdf9a47f06eecdb774b0029", + "sourceMap": "131:17419:6:-;;;2866:253;8:9:-1;5:2;;;30:1;27;20:12;5:2;2866:253:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3001:10;2987:5;;:25;;;;;;;;;;;;;;;;;;3038:9;3018:6;;:30;;;;;;;;;;;;;;;;;;3084:11;3054:13;;:42;;;;;;;;;;;;;;;;;;3109:5;3102:4;:12;;;;;;;;;;;;:::i;:::-;;2866:253;;;;131:17419;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;", + "deployedSourceMap": "131:17419:6:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12227:136;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12227:136:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5240:501;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5240:501:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2481:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2481:18:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;2481:18:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5994:434;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5994:434:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12839:229;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12839:229:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4606:375;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4606:375:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6939:1627;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6939:1627:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11361:704;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11361:704:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13303:233;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13303:233:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9473:912;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9473:912:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3615:734;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3615:734:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8795:268;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8795:268:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12523:138;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12523:138:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2219:44;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2219:44:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14375:145;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14375:145:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10841:357;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10841:357:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2323:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2323:43:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13714:446;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13714:446:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2443:34;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2443:34:6;;;;;;;;;;;;;;;;;;;;;;;;;;;2393:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2393:18:6;;;;;;;;;;;;;;;;;;;;;;;;;;;2415:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2415:24:6;;;;;;;;;;;;;;;;;;;;;;;;;;;12227:136;12293:16;12324:8;:22;12333:12;12324:22;;;;;;;;;;;;;;;;;:34;;;;;;;;;;;;12317:41;;12227:136;;;:::o;5240:501::-;5309:23;5335:8;:22;5344:12;5335:22;;;;;;;;;;;;;;;;;5309:48;;5389:10;5372:27;;:7;:13;;;;;;;;;;;;:27;;;5364:36;;;;;;;;5425:7;:23;;;5414:7;:34;;5406:43;;;;;;;;5500:13;;;;;;;;;;;:17;;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5500:31:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5500:31:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5500:31:6;;;;;;;;;;;;;;;;5489:7;5463;:23;;;:33;:68;;5455:77;;;;;;;;5566:7;5539;:23;;;:34;;;;;;;;;;;5587:5;;;;;;;;;;;:14;;;5602:10;5614:7;5587:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5587:35:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5587:35:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5587:35:6;;;;;;;;;;;;;;;;5579:44;;;;;;;;5720:10;5635:101;;5654:12;5635:101;;;;5674:7;5689;:23;;;5635:101;;;;;;;;;;;;;;;;;;;;;;;;5240:501;;;:::o;2481:18::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5994:434::-;6045:23;6071:8;:22;6080:12;6071:22;;;;;;;;;;;;;;;;;6045:48;;6122:7;:13;;;;;;;;;;;;6108:27;;:10;:27;;;6100:36;;;;;;;;6150:27;6164:12;6150:13;:27::i;:::-;6142:36;;;;;;;;6260:1;6237:7;:19;;;:24;:68;;;;6265:10;:31;6276:7;:19;;;6265:31;;;;;;;;;;;:40;;;;;;;;;;;;6237:68;6229:77;;;;;;;;6355:26;6368:12;6355;:26::i;:::-;6410:12;6392:31;;;;;;;;;;;;;5994:434;;:::o;12839:229::-;12907:4;12919:16;12938:8;:22;12947:12;12938:22;;;;;;;;;;;;;;;;;:34;;;12919:53;;13024:1;12987:8;:22;12996:12;12987:22;;;;;;;;;;;;;;;;;:34;;;:38;:75;;;;;13030:10;:23;13041:11;13030:23;;;;;;;;;;;:32;;;;;;;;;;;;13029:33;12987:75;12979:84;;12839:229;;;;:::o;4606:375::-;4674:23;4700:8;:22;4709:12;4700:22;;;;;;;;;;;;;;;;;4674:48;;4754:10;4737:27;;:7;:13;;;;;;;;;;;;:27;;;4729:36;;;;;;;;4799:7;4772;:23;;;:34;;;;;;;;;;;4820:5;;;;;;;;;;;:18;;;4839:10;4851:4;4857:7;4820:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4820:45:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4820:45:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4820:45:6;;;;;;;;;;;;;;;;4812:54;;;;;;;;4960:10;4878:98;;4894:12;4878:98;;;;4914:7;4929;:23;;;4878:98;;;;;;;;;;;;;;;;;;;;;;;;4606:375;;;:::o;6939:1627::-;7012:16;7036:23;7090:15;7614:11;8302:18;8326;7062:8;:22;7071:12;7062:22;;;;;;;;;;;;;;;;;7036:48;;7108:13;;;;;;;;;;;:17;;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7108:31:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7108:31:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7108:31:6;;;;;;;;;;;;;;;;7090:49;;7220:24;7231:12;7220:10;:24::i;:::-;:47;;;;7248:7;:19;;;;;;;;;;;;7220:47;7212:56;;;;;;;;7340:1;7317:7;:19;;;:24;:68;;;;7345:10;:31;7356:7;:19;;;7345:31;;;;;;;;;;;:40;;;;;;;;;;;;7317:68;7309:77;;;;;;;;7423:10;7397:7;:23;;;:36;7393:196;;;7497:26;7510:12;7497;:26::i;:::-;7553:12;7536:30;;;;;;;;;;;;;7581:1;7574:8;;;;7393:196;7628:6;;;;;;;;;;;:16;;;7652:13;;;;;;;;;;;:17;;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7652:31:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7652:31:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7652:31:6;;;;;;;;;;;;;;;;7691:13;;;;;;;;;;;:17;;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7691:35:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7691:35:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7691:35:6;;;;;;;;;;;;;;;;7734:13;;;;;;;;;;;:17;;;:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7734:35:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7734:35:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7734:35:6;;;;;;;;;;;;;;;;7628:147;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7628:147:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7628:147:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7628:147:6;;;;;;;;;;;;;;;;7614:161;;7803:202;;;;;;;;;7925:3;7911:10;7871:13;;;;;;;;;;;:17;;;:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7871:36:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7871:36:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7871:36:6;;;;;;;;;;;;;;;;7865:3;:42;7864:57;7863:65;;;;;;;;7803:202;;;;7833:10;7803:202;;;;;;7971:5;7803:202;;;;;;7943:10;7803:202;;;;7997:1;7803:202;;;7782:10;:18;7793:6;7782:18;;;;;;;;;;;:223;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8092:6;8070:7;:19;;:28;;;;8185:10;8158:7;:23;;;:37;;;;;;;;;;;8246:5;;;;;;;;;;;:18;;;8265:10;8277:4;8283:10;8246:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8246:48:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8246:48:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8246:48:6;;;;;;;;;;;;;;;;8238:57;;;;;;;;8384:6;;;;;;;;;;;:14;;;8399:6;8384:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8384:22:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8384:22:6;;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;8384:22:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8350:56;;;;;;;;;;;;;;8525:10;8418:123;;8436:12;8418:123;;;;8456:6;8470:5;;8483:13;8504;8418:123;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8555:6;8548:13;;6939:1627;;;;;;;;;;;:::o;11361:704::-;11430:4;11442:16;11461:8;:22;11470:12;11461:22;;;;;;;;;;;;;;;;;:34;;;11442:53;;11757:24;11768:12;11757:10;:24::i;:::-;:117;;;;;11871:3;11828:8;:22;11837:12;11828:22;;;;;;;;;;;;;;;;;:40;;;:46;11757:117;:192;;;;;11922:27;11936:12;11922:13;:27::i;:::-;11921:28;11757:192;:264;;;;;11975:1;11960:11;:16;:60;;;;12016:4;11980:40;;:10;:23;11991:11;11980:23;;;;;;;;;;;:32;;;;;;;;;;;;:40;;;11960:60;11757:264;11709:333;;;12036:4;12029:11;;;;11709:333;12055:5;12048:12;;11361:704;;;;;:::o;13303:233::-;13378:4;13390:16;13409:8;:22;13418:12;13409:22;;;;;;;;;;;;;;;;;:34;;;13390:53;;13458:29;13474:12;13458:15;:29::i;:::-;13450:38;;;;;;;;13502:6;;;;;;;;;;;:16;;;13519:11;13502:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13502:29:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13502:29:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13502:29:6;;;;;;;;;;;;;;;;13495:36;;13303:233;;;;:::o;9473:912::-;9765:16;9849:11;9696:5;9644:57;;:10;:24;9655:12;9644:24;;;;;;;;;;;:36;;:48;9681:10;9644:48;;;;;;;;;;;;;;;;;;;;;;;;;:57;;;9636:66;;;;;;;;9753:4;9716:41;;:10;:24;9727:12;9716:24;;;;;;;;;;;:33;;;;;;;;;;;;:41;;;9708:50;;;;;;;;9784:6;;;;;;;;;;;:26;;;9811:10;9823:12;9837:5;9784:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9784:59:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9784:59:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9784:59:6;;;;;;;;;;;;;;;;9765:78;;9863:44;9875:10;9887:12;9901:5;9863:11;:44::i;:::-;9849:58;;10097:11;10057:10;:24;10068:12;10057:24;;;;;;;;;;;:36;;;:51;;;;;;;;;;;10153:6;10114:10;:24;10125:12;10114:24;;;;;;;;;;;:35;;;:45;;;;;;;;;;;10266:4;10215:10;:24;10226:12;10215:24;;;;;;;;;;;:36;;:48;10252:10;10215:48;;;;;;;;;;;;;;;;:55;;;;;;;;;;;;;;;;;;10285:5;;;;;;;;;;;:14;;;10300:10;10312:6;10285:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10285:34:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10285:34:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10285:34:6;;;;;;;;;;;;;;;;10277:43;;;;;;;;10369:10;10332:48;;10347:12;10332:48;10361:6;10332:48;;;;;;;;;;;;;;;;;;9473:912;;;;:::o;3615:734::-;3854:23;3704:27;3718:12;3704:13;:27::i;:::-;3703:28;3695:37;;;;;;;;3747:24;3758:12;3747:10;:24::i;:::-;3746:25;3738:34;;;;;;;;3797:13;;;;;;;;;;;:17;;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3797:31:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3797:31:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3797:31:6;;;;;;;;;;;;;;;;3786:7;:42;;3778:51;;;;;;;;3880:8;:22;3889:12;3880:22;;;;;;;;;;;;;;;;;3854:48;;3924:10;3908:7;:13;;;:26;;;;;;;;;;;;;;;;;;4002:55;4022:13;;;;;;;;;;;:17;;;:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4022:34:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4022:34:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4022:34:6;;;;;;;;;;;;;;;;4002:15;:19;;:55;;;;:::i;:::-;3974:7;:25;;:83;;;;4089:7;4063;:23;;:33;;;;4166:5;;;;;;;;;;;:18;;;4185:7;:13;;;;;;;;;;;;4200:4;4206:7;4166:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4166:48:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4166:48:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4166:48:6;;;;;;;;;;;;;;;;4158:57;;;;;;;;4328:10;4227:117;;4247:12;4227:117;;;;4267:7;4282;:25;;;4315:5;;4227:117;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3615:734;;;;;:::o;8795:268::-;8856:30;8873:12;8856:16;:30::i;:::-;8852:207;;;8896:34;8917:12;8896:20;:34::i;:::-;8852:207;;;8947:36;8970:12;8947:22;:36::i;:::-;8943:116;;;8993:30;9010:12;8993:16;:30::i;:::-;8943:116;;;9044:8;;;8943:116;8852:207;8795:268;:::o;12523:138::-;12586:11;12655:1;12612:8;:22;12621:12;12612:22;;;;;;;;;;;;;;;;;:40;;;:44;12605:51;;12523:138;;;:::o;2219:44::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14375:145::-;14452:4;14471:10;:24;14482:12;14471:24;;;;;;;;;;;:36;;:44;14508:6;14471:44;;;;;;;;;;;;;;;;;;;;;;;;;14464:51;;14375:145;;;;:::o;10841:357::-;10932:4;10946:16;11007:15;11066:16;10965:10;:24;10976:12;10965:24;;;;;;;;;;;:36;;;10946:55;;11025:10;:24;11036:12;11025:24;;;;;;;;;;;:35;;;11007:53;;11085:6;;;;;;;;;;;:26;;;11112:6;11120:12;11134:5;11085:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11085:55:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11085:55:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11085:55:6;;;;;;;;;;;;;;;;11066:74;;11182:11;11168:10;11154:11;:24;11153:40;;;;;;;;11146:47;;10841:357;;;;;;;;:::o;2323:43::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;13714:446::-;13779:4;13800:10;:24;13811:12;13800:24;;;;;;;;;;;:33;;;;;;;;;;;;13799:34;:68;;;;;13837:6;;;;;;;;;;;:16;;;13854:12;13837:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13837:30:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13837:30:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13837:30:6;;;;;;;;;;;;;;;;13799:68;13791:77;;;;;;;;14009:1;13946:6;;;;;;;;;;;:45;;;13992:12;13946:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13946:59:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13946:59:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;13946:59:6;;;;;;;;;;;;;;;;:64;13942:126;;;14031:10;:24;14042:12;14031:24;;;;;;;;;;;:30;;;14027:1;:34;14020:41;;;;13942:126;14120:10;:24;14131:12;14120:24;;;;;;;;;;;:35;;;14086:10;:24;14097:12;14086:24;;;;;;;;;;;:30;;;14082:1;:34;14081:74;14074:81;;13714:446;;;;:::o;2443:34::-;;;;;;;;;;;;;:::o;2393:18::-;;;;;;;;;;;;;:::o;2415:24::-;;;;;;;;;;;;;:::o;16907:641::-;16965:23;17277:13;17312:20;16991:8;:22;17000:12;16991:22;;;;;;;;;;;;;;;;;16965:48;;17099:7;:19;;;;;;;;;;;;17095:133;;;17149:12;17133:29;;;;;;;;;;;;;17095:133;;;17208:12;17188:33;;;;;;;;;;;;;17095:133;17293:7;:13;;;;;;;;;;;;17277:29;;17335:7;:23;;;17312:46;;17371:8;:22;17380:12;17371:22;;;;;;;;;;;;;;;;;;17364:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17479:1;17461:15;:19;17457:87;;;17498:5;;;;;;;;;;;:14;;;17513:5;17520:15;17498:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17498:38:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17498:38:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;17498:38:6;;;;;;;;;;;;;;;;17490:47;;;;;;;;17457:87;16907:641;;;;:::o;1213:123:7:-;1271:9;1296:1;1292;:5;1288:9;;1315:1;1310;:6;;1303:14;;;;;;1330:1;1323:8;;1213:123;;;;:::o;16542:203:6:-;16613:8;:22;16622:12;16613:22;;;;;;;;;;;;;;;;;:34;;;;;;;;;;;;16612:35;16608:86;;;16679:12;16655:37;;;;;;;;;;;;;16608:86;16736:4;16699:8;:22;16708:12;16699:22;;;;;;;;;;;;;;;;;:34;;;:41;;;;;;;;;;;;;;;;;;16542:203;:::o;14844:1364::-;14906:16;15080:11;14925:8;:22;14934:12;14925:22;;;;;;;;;;;;;;;;;:34;;;14906:53;;15094:28;15110:11;15094:15;:28::i;:::-;15080:42;;15210:4;15175:10;:23;15186:11;15175:23;;;;;;;;;;;:32;;;:39;;;;;;;;;;;;;;;;;;15346:6;;;;;;;;;;;:45;;;15392:11;15346:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15346:58:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15346:58:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15346:58:6;;;;;;;;;;;;;;;;15308:10;:23;15319:11;15308:23;;;;;;;;;;;:35;;:96;;;;15445:6;;;;;;;;;;;:15;;;15461:11;15445:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15445:28:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15445:28:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15445:28:6;;;;;;;;;;;;;;;;15441:763;;;15483:34;15504:12;15483:20;:34::i;:::-;15634:6;15592:8;:22;15601:12;15592:22;;;;;;;;;;;;;;;;;:38;;;:48;;;;;;;;;;;15702:11;15680:12;15654:156;;;;15723:10;:23;15734:11;15723:23;;;;;;;;;;;:34;;;15767:10;:23;15778:11;15767:23;;;;;;;;;;;:35;;;15654:156;;;;;;;;;;;;;;;;;;;;;;;;15441:763;;;15876:26;15889:12;15876;:26::i;:::-;15965:5;;;;;;;;;;;:14;;;15980:10;:23;15991:11;15980:23;;;;;;;;;;;:34;;;;;;;;;;;;16016:6;15965:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15965:58:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15965:58:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15965:58:6;;;;;;;;;;;;;;;;15957:67;;;;;;;;16089:11;16067:12;16038:159;;;;16110:10;:23;16121:11;16110:23;;;;;;;;;;;:34;;;16154:10;:23;16165:11;16154:23;;;;;;;;;;;:35;;;16038:159;;;;;;;;;;;;;;;;;;;;;;;;15441:763;14844:1364;;;:::o", + "source": "pragma solidity 0.4.24;\n\nimport \"./ERC20.sol\";\nimport \"./Parameterizer.sol\";\nimport \"./PLCRVoting.sol\";\nimport \"./SafeMath.sol\";\n\n\ncontract Registry {\n\n // ------\n // EVENTS\n // ------\n\n event _Application(bytes32 indexed listingHash, uint deposit, uint appEndDate, string data, address indexed applicant);\n event _Challenge(bytes32 indexed listingHash, uint challengeID, string data, uint commitEndDate, uint revealEndDate, address indexed challenger);\n event _Deposit(bytes32 indexed listingHash, uint added, uint newTotal, address indexed owner);\n event _Withdrawal(bytes32 indexed listingHash, uint withdrew, uint newTotal, address indexed owner);\n event _ApplicationWhitelisted(bytes32 indexed listingHash);\n event _ApplicationRemoved(bytes32 indexed listingHash);\n event _ListingRemoved(bytes32 indexed listingHash);\n event _ListingWithdrawn(bytes32 indexed listingHash);\n event _TouchAndRemoved(bytes32 indexed listingHash);\n event _ChallengeFailed(bytes32 indexed listingHash, uint indexed challengeID, uint rewardPool, uint totalTokens);\n event _ChallengeSucceeded(bytes32 indexed listingHash, uint indexed challengeID, uint rewardPool, uint totalTokens);\n event _RewardClaimed(uint indexed challengeID, uint reward, address indexed voter);\n\n using SafeMath for uint;\n\n struct Listing {\n uint applicationExpiry; // Expiration date of apply stage\n bool whitelisted; // Indicates registry status\n address owner; // Owner of Listing\n uint unstakedDeposit; // Number of tokens in the listing not locked in a challenge\n uint challengeID; // Corresponds to a PollID in PLCRVoting\n }\n\n struct Challenge {\n uint rewardPool; // (remaining) Pool of tokens to be distributed to winning voters\n address challenger; // Owner of Challenge\n bool resolved; // Indication of if challenge is resolved\n uint stake; // Number of tokens at stake for either party during challenge\n uint totalTokens; // (remaining) Number of tokens used in voting by the winning side\n mapping(address => bool) tokenClaims; // Indicates whether a voter has claimed a reward yet\n }\n\n // Maps challengeIDs to associated challenge data\n mapping(uint => Challenge) public challenges;\n\n // Maps listingHashes to associated listingHash data\n mapping(bytes32 => Listing) public listings;\n\n // Global Variables\n ERC20 public token;\n PLCRVoting public voting;\n Parameterizer public parameterizer;\n string public name;\n\n // ------------\n // CONSTRUCTOR:\n // ------------\n\n /**\n @dev Contructor Sets the addresses for token, voting, and parameterizer\n @param _tokenAddr Address of the TCR's intrinsic ERC20 token\n @param _plcrAddr Address of a PLCR voting contract for the provided token\n @param _paramsAddr Address of a Parameterizer contract\n */\n constructor(\n address _tokenAddr,\n address _plcrAddr,\n address _paramsAddr,\n string _name\n ) public\n {\n token = ERC20(_tokenAddr);\n voting = PLCRVoting(_plcrAddr);\n parameterizer = Parameterizer(_paramsAddr);\n name = _name;\n }\n\n // --------------------\n // PUBLISHER INTERFACE:\n // --------------------\n\n /**\n @dev Allows a user to start an application. Takes tokens from user and sets\n apply stage end time.\n @param _listingHash The hash of a potential listing a user is applying to add to the registry\n @param _amount The number of ERC20 tokens a user is willing to potentially stake\n @param _data Extra data relevant to the application. Think IPFS hashes.\n */\n function apply(bytes32 _listingHash, uint _amount, string _data) external {\n require(!isWhitelisted(_listingHash));\n require(!appWasMade(_listingHash));\n require(_amount >= parameterizer.get(\"minDeposit\"));\n\n // Sets owner\n Listing storage listing = listings[_listingHash];\n listing.owner = msg.sender;\n\n // Sets apply stage end time\n listing.applicationExpiry = block.timestamp.add(parameterizer.get(\"applyStageLen\"));\n listing.unstakedDeposit = _amount;\n\n // Transfers tokens from user to Registry contract\n require(token.transferFrom(listing.owner, this, _amount));\n\n emit _Application(\n _listingHash,\n _amount,\n listing.applicationExpiry,\n _data,\n msg.sender\n );\n }\n\n /**\n @dev Allows the owner of a listingHash to increase their unstaked deposit.\n @param _listingHash A listingHash msg.sender is the owner of\n @param _amount The number of ERC20 tokens to increase a user's unstaked deposit\n */\n function deposit(bytes32 _listingHash, uint _amount) external {\n Listing storage listing = listings[_listingHash];\n\n require(listing.owner == msg.sender);\n\n listing.unstakedDeposit += _amount;\n require(token.transferFrom(msg.sender, this, _amount));\n\n emit _Deposit(\n _listingHash,\n _amount,\n listing.unstakedDeposit,\n msg.sender\n );\n }\n\n /**\n @dev Allows the owner of a listingHash to decrease their unstaked deposit.\n @param _listingHash A listingHash msg.sender is the owner of.\n @param _amount The number of ERC20 tokens to withdraw from the unstaked deposit.\n */\n function withdraw(bytes32 _listingHash, uint _amount) external {\n Listing storage listing = listings[_listingHash];\n\n require(listing.owner == msg.sender);\n require(_amount <= listing.unstakedDeposit);\n require(listing.unstakedDeposit - _amount >= parameterizer.get(\"minDeposit\"));\n\n listing.unstakedDeposit -= _amount;\n require(token.transfer(msg.sender, _amount));\n\n emit _Withdrawal(\n _listingHash,\n _amount,\n listing.unstakedDeposit,\n msg.sender\n );\n }\n\n /**\n @dev Allows the owner of a listingHash to remove the listingHash from the whitelist\n Returns all tokens to the owner of the listingHash\n @param _listingHash A listingHash msg.sender is the owner of.\n */\n function exit(bytes32 _listingHash) external {\n Listing storage listing = listings[_listingHash];\n\n require(msg.sender == listing.owner);\n require(isWhitelisted(_listingHash));\n\n // Cannot exit during ongoing challenge\n require(listing.challengeID == 0 || challenges[listing.challengeID].resolved);\n\n // Remove listingHash & return tokens\n resetListing(_listingHash);\n emit _ListingWithdrawn(_listingHash);\n }\n\n // -----------------------\n // TOKEN HOLDER INTERFACE:\n // -----------------------\n\n /**\n @dev Starts a poll for a listingHash which is either in the apply stage or\n already in the whitelist. Tokens are taken from the challenger and the\n applicant's deposits are locked.\n @param _listingHash The listingHash being challenged, whether listed or in application\n @param _data Extra data relevant to the challenge. Think IPFS hashes.\n */\n function challenge(bytes32 _listingHash, string _data) external returns (uint challengeID) {\n Listing storage listing = listings[_listingHash];\n uint minDeposit = parameterizer.get(\"minDeposit\");\n\n // Listing must be in apply stage or already on the whitelist\n require(appWasMade(_listingHash) || listing.whitelisted);\n // Prevent multiple challenges\n require(listing.challengeID == 0 || challenges[listing.challengeID].resolved);\n\n if (listing.unstakedDeposit < minDeposit) {\n // Not enough tokens, listingHash auto-delisted\n resetListing(_listingHash);\n emit _TouchAndRemoved(_listingHash);\n return 0;\n }\n\n // Starts poll\n uint pollID = voting.startPoll(\n parameterizer.get(\"voteQuorum\"),\n parameterizer.get(\"commitStageLen\"),\n parameterizer.get(\"revealStageLen\")\n );\n\n challenges[pollID] = Challenge({\n challenger: msg.sender,\n rewardPool: ((100 - parameterizer.get(\"dispensationPct\")) * minDeposit) / 100,\n stake: minDeposit,\n resolved: false,\n totalTokens: 0\n });\n\n // Updates listingHash to store most recent challenge\n listing.challengeID = pollID;\n\n // Locks tokens for listingHash during challenge\n listing.unstakedDeposit -= minDeposit;\n\n // Takes tokens from challenger\n require(token.transferFrom(msg.sender, this, minDeposit));\n\n uint commitEndDate;\n uint revealEndDate;\n (commitEndDate, revealEndDate,) = voting.pollMap(pollID);\n\n emit _Challenge(\n _listingHash,\n pollID,\n _data,\n commitEndDate,\n revealEndDate,\n msg.sender\n );\n\n return pollID;\n }\n\n /**\n @dev Updates a listingHash's status from 'application' to 'listing' or resolves\n a challenge if one exists.\n @param _listingHash The listingHash whose status is being updated\n */\n function updateStatus(bytes32 _listingHash) public {\n if (canBeWhitelisted(_listingHash)) {\n whitelistApplication(_listingHash);\n } else if (challengeCanBeResolved(_listingHash)) {\n resolveChallenge(_listingHash);\n } else {\n revert();\n }\n }\n\n // ----------------\n // TOKEN FUNCTIONS:\n // ----------------\n\n /**\n @dev Called by a voter to claim their reward for each completed vote. Someone\n must call updateStatus() before this can be called.\n @param _challengeID The PLCR pollID of the challenge a reward is being claimed for\n @param _salt The salt of a voter's commit hash in the given poll\n */\n function claimReward(uint _challengeID, uint _salt) public {\n // Ensures the voter has not already claimed tokens and challenge results have been processed\n require(challenges[_challengeID].tokenClaims[msg.sender] == false);\n require(challenges[_challengeID].resolved == true);\n\n uint voterTokens = voting.getNumPassingTokens(msg.sender, _challengeID, _salt);\n uint reward = voterReward(msg.sender, _challengeID, _salt);\n\n // Subtracts the voter's information to preserve the participation ratios\n // of other voters compared to the remaining pool of rewards\n challenges[_challengeID].totalTokens -= voterTokens;\n challenges[_challengeID].rewardPool -= reward;\n\n // Ensures a voter cannot claim tokens again\n challenges[_challengeID].tokenClaims[msg.sender] = true;\n\n require(token.transfer(msg.sender, reward));\n\n emit _RewardClaimed(_challengeID, reward, msg.sender);\n }\n\n // --------\n // GETTERS:\n // --------\n\n /**\n @dev Calculates the provided voter's token reward for the given poll.\n @param _voter The address of the voter whose reward balance is to be returned\n @param _challengeID The pollID of the challenge a reward balance is being queried for\n @param _salt The salt of the voter's commit hash in the given poll\n @return The uint indicating the voter's reward\n */\n function voterReward(address _voter, uint _challengeID, uint _salt)\n public view returns (uint)\n {\n uint totalTokens = challenges[_challengeID].totalTokens;\n uint rewardPool = challenges[_challengeID].rewardPool;\n uint voterTokens = voting.getNumPassingTokens(_voter, _challengeID, _salt);\n return (voterTokens * rewardPool) / totalTokens;\n }\n\n /**\n @dev Determines whether the given listingHash be whitelisted.\n @param _listingHash The listingHash whose status is to be examined\n */\n function canBeWhitelisted(bytes32 _listingHash) view public returns (bool) {\n uint challengeID = listings[_listingHash].challengeID;\n\n // Ensures that the application was made,\n // the application period has ended,\n // the listingHash can be whitelisted,\n // and either: the challengeID == 0, or the challenge has been resolved.\n if (\n /* solium-disable-next-line */\n appWasMade(_listingHash) &&\n /* solium-disable-next-line */\n listings[_listingHash].applicationExpiry < now &&\n /* solium-disable-next-line */\n !isWhitelisted(_listingHash) &&\n (challengeID == 0 || challenges[challengeID].resolved == true)\n ) {return true;}\n\n return false;\n }\n\n /**\n @dev Returns true if the provided listingHash is whitelisted\n @param _listingHash The listingHash whose status is to be examined\n */\n function isWhitelisted(bytes32 _listingHash) view public returns (bool whitelisted) {\n return listings[_listingHash].whitelisted;\n }\n\n /**\n @dev Returns true if apply was called for this listingHash\n @param _listingHash The listingHash whose status is to be examined\n */\n function appWasMade(bytes32 _listingHash) view public returns (bool exists) {\n return listings[_listingHash].applicationExpiry > 0;\n }\n\n /**\n @dev Returns true if the application/listingHash has an unresolved challenge\n @param _listingHash The listingHash whose status is to be examined\n */\n function challengeExists(bytes32 _listingHash) view public returns (bool) {\n uint challengeID = listings[_listingHash].challengeID;\n\n return (listings[_listingHash].challengeID > 0 && !challenges[challengeID].resolved);\n }\n\n /**\n @dev Determines whether voting has concluded in a challenge for a given\n listingHash. Throws if no challenge exists.\n @param _listingHash A listingHash with an unresolved challenge\n */\n function challengeCanBeResolved(bytes32 _listingHash) view public returns (bool) {\n uint challengeID = listings[_listingHash].challengeID;\n\n require(challengeExists(_listingHash));\n\n return voting.pollEnded(challengeID);\n }\n\n /**\n @dev Determines the number of tokens awarded to the winning party in a challenge.\n @param _challengeID The challengeID to determine a reward for\n */\n function determineReward(uint _challengeID) public view returns (uint) {\n require(!challenges[_challengeID].resolved && voting.pollEnded(_challengeID));\n\n // Edge case, nobody voted, give all tokens to the challenger.\n if (voting.getTotalNumberOfTokensForWinningOption(_challengeID) == 0) {\n return 2 * challenges[_challengeID].stake;\n }\n\n return (2 * challenges[_challengeID].stake) - challenges[_challengeID].rewardPool;\n }\n\n /**\n @dev Getter for Challenge tokenClaims mappings\n @param _challengeID The challengeID to query\n @param _voter The voter whose claim status to query for the provided challengeID\n */\n function tokenClaims(uint _challengeID, address _voter) public view returns (bool) {\n return challenges[_challengeID].tokenClaims[_voter];\n }\n\n // ----------------\n // PRIVATE FUNCTIONS:\n // ----------------\n\n /**\n @dev Determines the winner in a challenge. Rewards the winner tokens and\n either whitelists or de-whitelists the listingHash.\n @param _listingHash A listingHash with a challenge that is to be resolved\n */\n function resolveChallenge(bytes32 _listingHash) private {\n uint challengeID = listings[_listingHash].challengeID;\n\n // Calculates the winner's reward,\n // which is: (winner's full stake) + (dispensationPct * loser's stake)\n uint reward = determineReward(challengeID);\n\n // Sets flag on challenge being processed\n challenges[challengeID].resolved = true;\n\n // Stores the total tokens used for voting by the winning side for reward purposes\n challenges[challengeID].totalTokens = voting.getTotalNumberOfTokensForWinningOption(challengeID);\n\n // Case: challenge failed\n if (voting.isPassed(challengeID)) {\n whitelistApplication(_listingHash);\n // Unlock stake so that it can be retrieved by the applicant\n listings[_listingHash].unstakedDeposit += reward;\n\n emit _ChallengeFailed(\n _listingHash,\n challengeID,\n challenges[challengeID].rewardPool,\n challenges[challengeID].totalTokens\n );\n } else { // Case: challenge succeeded or nobody voted\n resetListing(_listingHash);\n // Transfer the reward to the challenger\n require(token.transfer(challenges[challengeID].challenger, reward));\n\n emit _ChallengeSucceeded(\n _listingHash,\n challengeID,\n challenges[challengeID].rewardPool,\n challenges[challengeID].totalTokens\n );\n }\n }\n\n /**\n @dev Called by updateStatus() if the applicationExpiry date passed without a\n challenge being made. Called by resolveChallenge() if an\n application/listing beat a challenge.\n @param _listingHash The listingHash of an application/listingHash to be whitelisted\n */\n function whitelistApplication(bytes32 _listingHash) private {\n if (!listings[_listingHash].whitelisted) {emit _ApplicationWhitelisted(_listingHash);}\n listings[_listingHash].whitelisted = true;\n }\n\n /**\n @dev Deletes a listingHash from the whitelist and transfers tokens back to owner\n @param _listingHash The listing hash to delete\n */\n function resetListing(bytes32 _listingHash) private {\n Listing storage listing = listings[_listingHash];\n\n // Emit events before deleting listing to check whether is whitelisted\n if (listing.whitelisted) {\n emit _ListingRemoved(_listingHash);\n } else {\n emit _ApplicationRemoved(_listingHash);\n }\n\n // Deleting listing to prevent reentry\n address owner = listing.owner;\n uint unstakedDeposit = listing.unstakedDeposit;\n delete listings[_listingHash];\n\n // Transfers any remaining balance back to the owner\n if (unstakedDeposit > 0) {\n require(token.transfer(owner, unstakedDeposit));\n }\n }\n}\n", + "sourcePath": "/home/rob/Github/computable/contracts/Registry.sol", "ast": { - "absolutePath": "/home/rbharath/computable/contracts/Registry.sol", + "absolutePath": "/home/rob/Github/computable/contracts/Registry.sol", "exportedSymbols": { "Registry": [ - 2106 + 3593 ] }, - "id": 2107, + "id": 3594, "nodeType": "SourceUnit", "nodes": [ { - "id": 1005, + "id": 2492, "literals": [ "solidity", "0.4", ".24" ], "nodeType": "PragmaDirective", - "src": "0:23:2" + "src": "0:23:6" }, { - "absolutePath": "tokens/eip20/EIP20Interface.sol", - "file": "tokens/eip20/EIP20Interface.sol", - "id": 1006, + "absolutePath": "/home/rob/Github/computable/contracts/ERC20.sol", + "file": "./ERC20.sol", + "id": 2493, "nodeType": "ImportDirective", - "scope": 2107, - "sourceUnit": 3783, - "src": "25:41:2", + "scope": 3594, + "sourceUnit": 409, + "src": "25:21:6", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/home/rbharath/computable/contracts/Parameterizer.sol", + "absolutePath": "/home/rob/Github/computable/contracts/Parameterizer.sol", "file": "./Parameterizer.sol", - "id": 1007, + "id": 2494, "nodeType": "ImportDirective", - "scope": 2107, - "sourceUnit": 1004, - "src": "67:29:2", + "scope": 3594, + "sourceUnit": 2491, + "src": "47:29:6", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "plcrvoting/PLCRVoting.sol", - "file": "plcrvoting/PLCRVoting.sol", - "id": 1008, + "absolutePath": "/home/rob/Github/computable/contracts/PLCRVoting.sol", + "file": "./PLCRVoting.sol", + "id": 2495, "nodeType": "ImportDirective", - "scope": 2107, - "sourceUnit": 3489, - "src": "97:35:2", + "scope": 3594, + "sourceUnit": 1472, + "src": "77:26:6", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "zeppelin/math/SafeMath.sol", - "file": "zeppelin/math/SafeMath.sol", - "id": 1009, + "absolutePath": "/home/rob/Github/computable/contracts/SafeMath.sol", + "file": "./SafeMath.sol", + "id": 2496, "nodeType": "ImportDirective", - "scope": 2107, - "sourceUnit": 3878, - "src": "133:36:2", + "scope": 3594, + "sourceUnit": 3688, + "src": "104:24:6", "symbolAliases": [], "unitAlias": "" }, @@ -777,9 +777,9 @@ "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 2106, + "id": 3593, "linearizedBaseContracts": [ - 2106 + 3593 ], "name": "Registry", "nodeType": "ContractDefinition", @@ -787,21 +787,21 @@ { "anonymous": false, "documentation": null, - "id": 1021, + "id": 2508, "name": "_Application", "nodeType": "EventDefinition", "parameters": { - "id": 1020, + "id": 2507, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1011, + "id": 2498, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1021, - "src": "250:27:2", + "scope": 2508, + "src": "210:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -809,10 +809,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1010, + "id": 2497, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "250:7:2", + "src": "210:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -823,12 +823,12 @@ }, { "constant": false, - "id": 1013, + "id": 2500, "indexed": false, "name": "deposit", "nodeType": "VariableDeclaration", - "scope": 1021, - "src": "279:12:2", + "scope": 2508, + "src": "239:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -836,10 +836,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1012, + "id": 2499, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "279:4:2", + "src": "239:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -850,12 +850,12 @@ }, { "constant": false, - "id": 1015, + "id": 2502, "indexed": false, "name": "appEndDate", "nodeType": "VariableDeclaration", - "scope": 1021, - "src": "293:15:2", + "scope": 2508, + "src": "253:15:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -863,10 +863,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1014, + "id": 2501, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "293:4:2", + "src": "253:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -877,12 +877,12 @@ }, { "constant": false, - "id": 1017, + "id": 2504, "indexed": false, "name": "data", "nodeType": "VariableDeclaration", - "scope": 1021, - "src": "310:11:2", + "scope": 2508, + "src": "270:11:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -890,10 +890,10 @@ "typeString": "string" }, "typeName": { - "id": 1016, + "id": 2503, "name": "string", "nodeType": "ElementaryTypeName", - "src": "310:6:2", + "src": "270:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -904,12 +904,12 @@ }, { "constant": false, - "id": 1019, + "id": 2506, "indexed": true, "name": "applicant", "nodeType": "VariableDeclaration", - "scope": 1021, - "src": "323:25:2", + "scope": 2508, + "src": "283:25:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -917,10 +917,10 @@ "typeString": "address" }, "typeName": { - "id": 1018, + "id": 2505, "name": "address", "nodeType": "ElementaryTypeName", - "src": "323:7:2", + "src": "283:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -930,28 +930,28 @@ "visibility": "internal" } ], - "src": "249:100:2" + "src": "209:100:6" }, - "src": "231:119:2" + "src": "191:119:6" }, { "anonymous": false, "documentation": null, - "id": 1035, + "id": 2522, "name": "_Challenge", "nodeType": "EventDefinition", "parameters": { - "id": 1034, + "id": 2521, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1023, + "id": 2510, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1035, - "src": "370:27:2", + "scope": 2522, + "src": "330:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -959,10 +959,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1022, + "id": 2509, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "370:7:2", + "src": "330:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -973,12 +973,12 @@ }, { "constant": false, - "id": 1025, + "id": 2512, "indexed": false, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1035, - "src": "399:16:2", + "scope": 2522, + "src": "359:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -986,10 +986,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1024, + "id": 2511, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "399:4:2", + "src": "359:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1000,12 +1000,12 @@ }, { "constant": false, - "id": 1027, + "id": 2514, "indexed": false, "name": "data", "nodeType": "VariableDeclaration", - "scope": 1035, - "src": "417:11:2", + "scope": 2522, + "src": "377:11:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1013,10 +1013,10 @@ "typeString": "string" }, "typeName": { - "id": 1026, + "id": 2513, "name": "string", "nodeType": "ElementaryTypeName", - "src": "417:6:2", + "src": "377:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1027,12 +1027,12 @@ }, { "constant": false, - "id": 1029, + "id": 2516, "indexed": false, "name": "commitEndDate", "nodeType": "VariableDeclaration", - "scope": 1035, - "src": "430:18:2", + "scope": 2522, + "src": "390:18:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1040,10 +1040,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1028, + "id": 2515, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "430:4:2", + "src": "390:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1054,12 +1054,12 @@ }, { "constant": false, - "id": 1031, + "id": 2518, "indexed": false, "name": "revealEndDate", "nodeType": "VariableDeclaration", - "scope": 1035, - "src": "450:18:2", + "scope": 2522, + "src": "410:18:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1067,10 +1067,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1030, + "id": 2517, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "450:4:2", + "src": "410:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1081,12 +1081,12 @@ }, { "constant": false, - "id": 1033, + "id": 2520, "indexed": true, "name": "challenger", "nodeType": "VariableDeclaration", - "scope": 1035, - "src": "470:26:2", + "scope": 2522, + "src": "430:26:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1094,10 +1094,10 @@ "typeString": "address" }, "typeName": { - "id": 1032, + "id": 2519, "name": "address", "nodeType": "ElementaryTypeName", - "src": "470:7:2", + "src": "430:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1107,28 +1107,28 @@ "visibility": "internal" } ], - "src": "369:128:2" + "src": "329:128:6" }, - "src": "353:145:2" + "src": "313:145:6" }, { "anonymous": false, "documentation": null, - "id": 1045, + "id": 2532, "name": "_Deposit", "nodeType": "EventDefinition", "parameters": { - "id": 1044, + "id": 2531, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1037, + "id": 2524, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1045, - "src": "516:27:2", + "scope": 2532, + "src": "476:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1136,10 +1136,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1036, + "id": 2523, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "516:7:2", + "src": "476:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1150,12 +1150,12 @@ }, { "constant": false, - "id": 1039, + "id": 2526, "indexed": false, "name": "added", "nodeType": "VariableDeclaration", - "scope": 1045, - "src": "545:10:2", + "scope": 2532, + "src": "505:10:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1163,10 +1163,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1038, + "id": 2525, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "545:4:2", + "src": "505:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1177,12 +1177,12 @@ }, { "constant": false, - "id": 1041, + "id": 2528, "indexed": false, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 1045, - "src": "557:13:2", + "scope": 2532, + "src": "517:13:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1190,10 +1190,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1040, + "id": 2527, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "557:4:2", + "src": "517:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1204,12 +1204,12 @@ }, { "constant": false, - "id": 1043, + "id": 2530, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1045, - "src": "572:21:2", + "scope": 2532, + "src": "532:21:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1217,10 +1217,10 @@ "typeString": "address" }, "typeName": { - "id": 1042, + "id": 2529, "name": "address", "nodeType": "ElementaryTypeName", - "src": "572:7:2", + "src": "532:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1230,28 +1230,28 @@ "visibility": "internal" } ], - "src": "515:79:2" + "src": "475:79:6" }, - "src": "501:94:2" + "src": "461:94:6" }, { "anonymous": false, "documentation": null, - "id": 1055, + "id": 2542, "name": "_Withdrawal", "nodeType": "EventDefinition", "parameters": { - "id": 1054, + "id": 2541, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1047, + "id": 2534, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1055, - "src": "616:27:2", + "scope": 2542, + "src": "576:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1259,10 +1259,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1046, + "id": 2533, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "616:7:2", + "src": "576:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1273,12 +1273,12 @@ }, { "constant": false, - "id": 1049, + "id": 2536, "indexed": false, "name": "withdrew", "nodeType": "VariableDeclaration", - "scope": 1055, - "src": "645:13:2", + "scope": 2542, + "src": "605:13:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1286,10 +1286,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1048, + "id": 2535, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "645:4:2", + "src": "605:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1300,12 +1300,12 @@ }, { "constant": false, - "id": 1051, + "id": 2538, "indexed": false, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 1055, - "src": "660:13:2", + "scope": 2542, + "src": "620:13:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1313,10 +1313,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1050, + "id": 2537, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "660:4:2", + "src": "620:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1327,12 +1327,12 @@ }, { "constant": false, - "id": 1053, + "id": 2540, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1055, - "src": "675:21:2", + "scope": 2542, + "src": "635:21:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1340,10 +1340,10 @@ "typeString": "address" }, "typeName": { - "id": 1052, + "id": 2539, "name": "address", "nodeType": "ElementaryTypeName", - "src": "675:7:2", + "src": "635:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1353,28 +1353,28 @@ "visibility": "internal" } ], - "src": "615:82:2" + "src": "575:82:6" }, - "src": "598:100:2" + "src": "558:100:6" }, { "anonymous": false, "documentation": null, - "id": 1059, + "id": 2546, "name": "_ApplicationWhitelisted", "nodeType": "EventDefinition", "parameters": { - "id": 1058, + "id": 2545, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1057, + "id": 2544, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1059, - "src": "731:27:2", + "scope": 2546, + "src": "691:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1382,10 +1382,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1056, + "id": 2543, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "731:7:2", + "src": "691:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1395,28 +1395,28 @@ "visibility": "internal" } ], - "src": "730:29:2" + "src": "690:29:6" }, - "src": "701:59:2" + "src": "661:59:6" }, { "anonymous": false, "documentation": null, - "id": 1063, + "id": 2550, "name": "_ApplicationRemoved", "nodeType": "EventDefinition", "parameters": { - "id": 1062, + "id": 2549, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1061, + "id": 2548, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1063, - "src": "789:27:2", + "scope": 2550, + "src": "749:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1424,10 +1424,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1060, + "id": 2547, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "789:7:2", + "src": "749:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1437,28 +1437,28 @@ "visibility": "internal" } ], - "src": "788:29:2" + "src": "748:29:6" }, - "src": "763:55:2" + "src": "723:55:6" }, { "anonymous": false, "documentation": null, - "id": 1067, + "id": 2554, "name": "_ListingRemoved", "nodeType": "EventDefinition", "parameters": { - "id": 1066, + "id": 2553, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1065, + "id": 2552, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1067, - "src": "843:27:2", + "scope": 2554, + "src": "803:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1466,10 +1466,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1064, + "id": 2551, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "843:7:2", + "src": "803:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1479,28 +1479,28 @@ "visibility": "internal" } ], - "src": "842:29:2" + "src": "802:29:6" }, - "src": "821:51:2" + "src": "781:51:6" }, { "anonymous": false, "documentation": null, - "id": 1071, + "id": 2558, "name": "_ListingWithdrawn", "nodeType": "EventDefinition", "parameters": { - "id": 1070, + "id": 2557, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1069, + "id": 2556, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1071, - "src": "899:27:2", + "scope": 2558, + "src": "859:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1508,10 +1508,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1068, + "id": 2555, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "899:7:2", + "src": "859:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1521,28 +1521,28 @@ "visibility": "internal" } ], - "src": "898:29:2" + "src": "858:29:6" }, - "src": "875:53:2" + "src": "835:53:6" }, { "anonymous": false, "documentation": null, - "id": 1075, + "id": 2562, "name": "_TouchAndRemoved", "nodeType": "EventDefinition", "parameters": { - "id": 1074, + "id": 2561, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1073, + "id": 2560, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1075, - "src": "954:27:2", + "scope": 2562, + "src": "914:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1550,10 +1550,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1072, + "id": 2559, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "954:7:2", + "src": "914:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1563,28 +1563,28 @@ "visibility": "internal" } ], - "src": "953:29:2" + "src": "913:29:6" }, - "src": "931:52:2" + "src": "891:52:6" }, { "anonymous": false, "documentation": null, - "id": 1085, + "id": 2572, "name": "_ChallengeFailed", "nodeType": "EventDefinition", "parameters": { - "id": 1084, + "id": 2571, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1077, + "id": 2564, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1085, - "src": "1009:27:2", + "scope": 2572, + "src": "969:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1592,10 +1592,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1076, + "id": 2563, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1009:7:2", + "src": "969:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1606,12 +1606,12 @@ }, { "constant": false, - "id": 1079, + "id": 2566, "indexed": true, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1085, - "src": "1038:24:2", + "scope": 2572, + "src": "998:24:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1619,10 +1619,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1078, + "id": 2565, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1038:4:2", + "src": "998:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1633,12 +1633,12 @@ }, { "constant": false, - "id": 1081, + "id": 2568, "indexed": false, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 1085, - "src": "1064:15:2", + "scope": 2572, + "src": "1024:15:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1646,10 +1646,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1080, + "id": 2567, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1064:4:2", + "src": "1024:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1660,12 +1660,12 @@ }, { "constant": false, - "id": 1083, + "id": 2570, "indexed": false, "name": "totalTokens", "nodeType": "VariableDeclaration", - "scope": 1085, - "src": "1081:16:2", + "scope": 2572, + "src": "1041:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1673,10 +1673,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1082, + "id": 2569, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1081:4:2", + "src": "1041:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1686,28 +1686,28 @@ "visibility": "internal" } ], - "src": "1008:90:2" + "src": "968:90:6" }, - "src": "986:113:2" + "src": "946:113:6" }, { "anonymous": false, "documentation": null, - "id": 1095, + "id": 2582, "name": "_ChallengeSucceeded", "nodeType": "EventDefinition", "parameters": { - "id": 1094, + "id": 2581, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1087, + "id": 2574, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "1128:27:2", + "scope": 2582, + "src": "1088:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1715,10 +1715,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1086, + "id": 2573, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1128:7:2", + "src": "1088:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -1729,12 +1729,12 @@ }, { "constant": false, - "id": 1089, + "id": 2576, "indexed": true, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "1157:24:2", + "scope": 2582, + "src": "1117:24:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1742,10 +1742,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1088, + "id": 2575, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1157:4:2", + "src": "1117:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1756,12 +1756,12 @@ }, { "constant": false, - "id": 1091, + "id": 2578, "indexed": false, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "1183:15:2", + "scope": 2582, + "src": "1143:15:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1769,10 +1769,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1090, + "id": 2577, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1183:4:2", + "src": "1143:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1783,12 +1783,12 @@ }, { "constant": false, - "id": 1093, + "id": 2580, "indexed": false, "name": "totalTokens", "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "1200:16:2", + "scope": 2582, + "src": "1160:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1796,10 +1796,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1092, + "id": 2579, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1200:4:2", + "src": "1160:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1809,28 +1809,28 @@ "visibility": "internal" } ], - "src": "1127:90:2" + "src": "1087:90:6" }, - "src": "1102:116:2" + "src": "1062:116:6" }, { "anonymous": false, "documentation": null, - "id": 1103, + "id": 2590, "name": "_RewardClaimed", "nodeType": "EventDefinition", "parameters": { - "id": 1102, + "id": 2589, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1097, + "id": 2584, "indexed": true, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1103, - "src": "1242:24:2", + "scope": 2590, + "src": "1202:24:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1838,10 +1838,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1096, + "id": 2583, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1242:4:2", + "src": "1202:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1852,12 +1852,12 @@ }, { "constant": false, - "id": 1099, + "id": 2586, "indexed": false, "name": "reward", "nodeType": "VariableDeclaration", - "scope": 1103, - "src": "1268:11:2", + "scope": 2590, + "src": "1228:11:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1865,10 +1865,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1098, + "id": 2585, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1268:4:2", + "src": "1228:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1879,12 +1879,12 @@ }, { "constant": false, - "id": 1101, + "id": 2588, "indexed": true, "name": "voter", "nodeType": "VariableDeclaration", - "scope": 1103, - "src": "1281:21:2", + "scope": 2590, + "src": "1241:21:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1892,10 +1892,10 @@ "typeString": "address" }, "typeName": { - "id": 1100, + "id": 2587, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1281:7:2", + "src": "1241:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1905,31 +1905,31 @@ "visibility": "internal" } ], - "src": "1241:62:2" + "src": "1201:62:6" }, - "src": "1221:83:2" + "src": "1181:83:6" }, { - "id": 1106, + "id": 2593, "libraryName": { "contractScope": null, - "id": 1104, + "id": 2591, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3877, - "src": "1314:8:2", + "referencedDeclaration": 3687, + "src": "1274:8:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$3877", + "typeIdentifier": "t_contract$_SafeMath_$3687", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", - "src": "1308:24:2", + "src": "1268:24:6", "typeName": { - "id": 1105, + "id": 2592, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1327:4:2", + "src": "1287:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1938,15 +1938,15 @@ }, { "canonicalName": "Registry.Listing", - "id": 1117, + "id": 2604, "members": [ { "constant": false, - "id": 1108, + "id": 2595, "name": "applicationExpiry", "nodeType": "VariableDeclaration", - "scope": 1117, - "src": "1357:22:2", + "scope": 2604, + "src": "1317:22:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1954,10 +1954,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1107, + "id": 2594, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1357:4:2", + "src": "1317:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1968,11 +1968,11 @@ }, { "constant": false, - "id": 1110, + "id": 2597, "name": "whitelisted", "nodeType": "VariableDeclaration", - "scope": 1117, - "src": "1419:16:2", + "scope": 2604, + "src": "1379:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1980,10 +1980,10 @@ "typeString": "bool" }, "typeName": { - "id": 1109, + "id": 2596, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1419:4:2", + "src": "1379:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1994,11 +1994,11 @@ }, { "constant": false, - "id": 1112, + "id": 2599, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1117, - "src": "1476:13:2", + "scope": 2604, + "src": "1436:13:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2006,10 +2006,10 @@ "typeString": "address" }, "typeName": { - "id": 1111, + "id": 2598, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1476:7:2", + "src": "1436:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2020,11 +2020,11 @@ }, { "constant": false, - "id": 1114, + "id": 2601, "name": "unstakedDeposit", "nodeType": "VariableDeclaration", - "scope": 1117, - "src": "1524:20:2", + "scope": 2604, + "src": "1484:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2032,10 +2032,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1113, + "id": 2600, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1524:4:2", + "src": "1484:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2046,11 +2046,11 @@ }, { "constant": false, - "id": 1116, + "id": 2603, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1117, - "src": "1613:16:2", + "scope": 2604, + "src": "1573:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2058,10 +2058,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1115, + "id": 2602, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1613:4:2", + "src": "1573:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2073,21 +2073,21 @@ ], "name": "Listing", "nodeType": "StructDefinition", - "scope": 2106, - "src": "1336:345:2", + "scope": 3593, + "src": "1296:345:6", "visibility": "public" }, { "canonicalName": "Registry.Challenge", - "id": 1132, + "id": 2619, "members": [ { "constant": false, - "id": 1119, + "id": 2606, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 1132, - "src": "1708:15:2", + "scope": 2619, + "src": "1668:15:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2095,10 +2095,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1118, + "id": 2605, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1708:4:2", + "src": "1668:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2109,11 +2109,11 @@ }, { "constant": false, - "id": 1121, + "id": 2608, "name": "challenger", "nodeType": "VariableDeclaration", - "scope": 1132, - "src": "1802:18:2", + "scope": 2619, + "src": "1762:18:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2121,10 +2121,10 @@ "typeString": "address" }, "typeName": { - "id": 1120, + "id": 2607, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1802:7:2", + "src": "1762:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2135,11 +2135,11 @@ }, { "constant": false, - "id": 1123, + "id": 2610, "name": "resolved", "nodeType": "VariableDeclaration", - "scope": 1132, - "src": "1852:13:2", + "scope": 2619, + "src": "1812:13:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2147,10 +2147,10 @@ "typeString": "bool" }, "typeName": { - "id": 1122, + "id": 2609, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1852:4:2", + "src": "1812:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2161,11 +2161,11 @@ }, { "constant": false, - "id": 1125, + "id": 2612, "name": "stake", "nodeType": "VariableDeclaration", - "scope": 1132, - "src": "1922:10:2", + "scope": 2619, + "src": "1882:10:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2173,10 +2173,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1124, + "id": 2611, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1922:4:2", + "src": "1882:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2187,11 +2187,11 @@ }, { "constant": false, - "id": 1127, + "id": 2614, "name": "totalTokens", "nodeType": "VariableDeclaration", - "scope": 1132, - "src": "2013:16:2", + "scope": 2619, + "src": "1973:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2199,10 +2199,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1126, + "id": 2613, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2013:4:2", + "src": "1973:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2213,11 +2213,11 @@ }, { "constant": false, - "id": 1131, + "id": 2618, "name": "tokenClaims", "nodeType": "VariableDeclaration", - "scope": 1132, - "src": "2108:36:2", + "scope": 2619, + "src": "2068:36:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2225,28 +2225,28 @@ "typeString": "mapping(address => bool)" }, "typeName": { - "id": 1130, + "id": 2617, "keyType": { - "id": 1128, + "id": 2615, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2116:7:2", + "src": "2076:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "2108:24:2", + "src": "2068:24:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" }, "valueType": { - "id": 1129, + "id": 2616, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "2127:4:2", + "src": "2087:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2259,50 +2259,50 @@ ], "name": "Challenge", "nodeType": "StructDefinition", - "scope": 2106, - "src": "1685:518:2", + "scope": 3593, + "src": "1645:518:6", "visibility": "public" }, { "constant": false, - "id": 1136, + "id": 2623, "name": "challenges", "nodeType": "VariableDeclaration", - "scope": 2106, - "src": "2259:44:2", + "scope": 3593, + "src": "2219:44:6", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge)" }, "typeName": { - "id": 1135, + "id": 2622, "keyType": { - "id": 1133, + "id": 2620, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2267:4:2", + "src": "2227:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Mapping", - "src": "2259:26:2", + "src": "2219:26:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge)" }, "valueType": { "contractScope": null, - "id": 1134, + "id": 2621, "name": "Challenge", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1132, - "src": "2275:9:2", + "referencedDeclaration": 2619, + "src": "2235:9:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$2619_storage_ptr", "typeString": "struct Registry.Challenge" } } @@ -2312,44 +2312,44 @@ }, { "constant": false, - "id": 1140, + "id": 2627, "name": "listings", "nodeType": "VariableDeclaration", - "scope": 2106, - "src": "2363:43:2", + "scope": 3593, + "src": "2323:43:6", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing)" }, "typeName": { - "id": 1139, + "id": 2626, "keyType": { - "id": 1137, + "id": 2624, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2371:7:2", + "src": "2331:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "2363:27:2", + "src": "2323:27:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing)" }, "valueType": { "contractScope": null, - "id": 1138, + "id": 2625, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1117, - "src": "2382:7:2", + "referencedDeclaration": 2604, + "src": "2342:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" } } @@ -2359,27 +2359,27 @@ }, { "constant": false, - "id": 1142, + "id": 2629, "name": "token", "nodeType": "VariableDeclaration", - "scope": 2106, - "src": "2433:27:2", + "scope": 3593, + "src": "2393:18:6", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" }, "typeName": { "contractScope": null, - "id": 1141, - "name": "EIP20Interface", + "id": 2628, + "name": "ERC20", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3782, - "src": "2433:14:2", + "referencedDeclaration": 408, + "src": "2393:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, "value": null, @@ -2387,26 +2387,26 @@ }, { "constant": false, - "id": 1144, + "id": 2631, "name": "voting", "nodeType": "VariableDeclaration", - "scope": 2106, - "src": "2464:24:2", + "scope": 3593, + "src": "2415:24:6", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" }, "typeName": { "contractScope": null, - "id": 1143, + "id": 2630, "name": "PLCRVoting", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3488, - "src": "2464:10:2", + "referencedDeclaration": 1471, + "src": "2415:10:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, @@ -2415,26 +2415,26 @@ }, { "constant": false, - "id": 1146, + "id": 2633, "name": "parameterizer", "nodeType": "VariableDeclaration", - "scope": 2106, - "src": "2492:34:2", + "scope": 3593, + "src": "2443:34:6", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" }, "typeName": { "contractScope": null, - "id": 1145, + "id": 2632, "name": "Parameterizer", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1003, - "src": "2492:13:2", + "referencedDeclaration": 2490, + "src": "2443:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, @@ -2443,11 +2443,11 @@ }, { "constant": false, - "id": 1148, + "id": 2635, "name": "name", "nodeType": "VariableDeclaration", - "scope": 2106, - "src": "2530:18:2", + "scope": 3593, + "src": "2481:18:6", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -2455,10 +2455,10 @@ "typeString": "string" }, "typeName": { - "id": 1147, + "id": 2634, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2530:6:2", + "src": "2481:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2469,29 +2469,29 @@ }, { "body": { - "id": 1181, + "id": 2668, "nodeType": "Block", - "src": "3036:147:2", + "src": "2981:138:6", "statements": [ { "expression": { "argumentTypes": null, - "id": 1163, + "id": 2650, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1159, + "id": 2646, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "3042:5:2", + "referencedDeclaration": 2629, + "src": "2987:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, "nodeType": "Assignment", @@ -2501,12 +2501,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1161, + "id": 2648, "name": "_tokenAddr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1150, - "src": "3065:10:2", + "referencedDeclaration": 2637, + "src": "3001:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2520,18 +2520,18 @@ "typeString": "address" } ], - "id": 1160, - "name": "EIP20Interface", + "id": 2647, + "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3782, - "src": "3050:14:2", + "referencedDeclaration": 408, + "src": "2995:5:6", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_EIP20Interface_$3782_$", - "typeString": "type(contract EIP20Interface)" + "typeIdentifier": "t_type$_t_contract$_ERC20_$408_$", + "typeString": "type(contract ERC20)" } }, - "id": 1162, + "id": 2649, "isConstant": false, "isLValue": false, "isPure": false, @@ -2539,40 +2539,40 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3050:26:2", + "src": "2995:17:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "src": "3042:34:2", + "src": "2987:25:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 1164, + "id": 2651, "nodeType": "ExpressionStatement", - "src": "3042:34:2" + "src": "2987:25:6" }, { "expression": { "argumentTypes": null, - "id": 1169, + "id": 2656, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1165, + "id": 2652, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "3082:6:2", + "referencedDeclaration": 2631, + "src": "3018:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, @@ -2583,12 +2583,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1167, + "id": 2654, "name": "_plcrAddr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1152, - "src": "3102:9:2", + "referencedDeclaration": 2639, + "src": "3038:9:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2602,18 +2602,18 @@ "typeString": "address" } ], - "id": 1166, + "id": 2653, "name": "PLCRVoting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3488, - "src": "3091:10:2", + "referencedDeclaration": 1471, + "src": "3027:10:6", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_PLCRVoting_$3488_$", + "typeIdentifier": "t_type$_t_contract$_PLCRVoting_$1471_$", "typeString": "type(contract PLCRVoting)" } }, - "id": 1168, + "id": 2655, "isConstant": false, "isLValue": false, "isPure": false, @@ -2621,40 +2621,40 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3091:21:2", + "src": "3027:21:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "src": "3082:30:2", + "src": "3018:30:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1170, + "id": 2657, "nodeType": "ExpressionStatement", - "src": "3082:30:2" + "src": "3018:30:6" }, { "expression": { "argumentTypes": null, - "id": 1175, + "id": 2662, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1171, + "id": 2658, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "3118:13:2", + "referencedDeclaration": 2633, + "src": "3054:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, @@ -2665,12 +2665,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1173, + "id": 2660, "name": "_paramsAddr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1154, - "src": "3148:11:2", + "referencedDeclaration": 2641, + "src": "3084:11:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2684,18 +2684,18 @@ "typeString": "address" } ], - "id": 1172, + "id": 2659, "name": "Parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1003, - "src": "3134:13:2", + "referencedDeclaration": 2490, + "src": "3070:13:6", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Parameterizer_$1003_$", + "typeIdentifier": "t_type$_t_contract$_Parameterizer_$2490_$", "typeString": "type(contract Parameterizer)" } }, - "id": 1174, + "id": 2661, "isConstant": false, "isLValue": false, "isPure": false, @@ -2703,38 +2703,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3134:26:2", + "src": "3070:26:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "src": "3118:42:2", + "src": "3054:42:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1176, + "id": 2663, "nodeType": "ExpressionStatement", - "src": "3118:42:2" + "src": "3054:42:6" }, { "expression": { "argumentTypes": null, - "id": 1179, + "id": 2666, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1177, + "id": 2664, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1148, - "src": "3166:4:2", + "referencedDeclaration": 2635, + "src": "3102:4:6", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -2744,48 +2744,48 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1178, + "id": 2665, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1156, - "src": "3173:5:2", + "referencedDeclaration": 2643, + "src": "3109:5:6", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "3166:12:2", + "src": "3102:12:6", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 1180, + "id": 2667, "nodeType": "ExpressionStatement", - "src": "3166:12:2" + "src": "3102:12:6" } ] }, "documentation": "@dev Contructor Sets the addresses for token, voting, and parameterizer\n@param _tokenAddr Address of the TCR's intrinsic ERC20 token\n@param _plcrAddr Address of a PLCR voting contract for the provided token\n@param _paramsAddr Address of a Parameterizer contract", - "id": 1182, + "id": 2669, "implemented": true, "isConstructor": true, "isDeclaredConst": false, "modifiers": [], - "name": "Registry", + "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1157, + "id": 2644, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1150, + "id": 2637, "name": "_tokenAddr", "nodeType": "VariableDeclaration", - "scope": 1182, - "src": "2938:18:2", + "scope": 2669, + "src": "2883:18:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2793,10 +2793,10 @@ "typeString": "address" }, "typeName": { - "id": 1149, + "id": 2636, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2938:7:2", + "src": "2883:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2807,11 +2807,11 @@ }, { "constant": false, - "id": 1152, + "id": 2639, "name": "_plcrAddr", "nodeType": "VariableDeclaration", - "scope": 1182, - "src": "2962:17:2", + "scope": 2669, + "src": "2907:17:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2819,10 +2819,10 @@ "typeString": "address" }, "typeName": { - "id": 1151, + "id": 2638, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2962:7:2", + "src": "2907:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2833,11 +2833,11 @@ }, { "constant": false, - "id": 1154, + "id": 2641, "name": "_paramsAddr", "nodeType": "VariableDeclaration", - "scope": 1182, - "src": "2985:19:2", + "scope": 2669, + "src": "2930:19:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2845,10 +2845,10 @@ "typeString": "address" }, "typeName": { - "id": 1153, + "id": 2640, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2985:7:2", + "src": "2930:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2859,11 +2859,11 @@ }, { "constant": false, - "id": 1156, + "id": 2643, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1182, - "src": "3010:12:2", + "scope": 2669, + "src": "2955:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2871,10 +2871,10 @@ "typeString": "string" }, "typeName": { - "id": 1155, + "id": 2642, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3010:6:2", + "src": "2955:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2884,26 +2884,26 @@ "visibility": "internal" } ], - "src": "2932:94:2" + "src": "2877:94:6" }, "payable": false, "returnParameters": { - "id": 1158, + "id": 2645, "nodeType": "ParameterList", "parameters": [], - "src": "3036:0:2" + "src": "2981:0:6" }, - "scope": 2106, - "src": "2915:268:2", + "scope": 3593, + "src": "2866:253:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1266, + "id": 2753, "nodeType": "Block", - "src": "3753:619:2", + "src": "3689:660:6", "statements": [ { "expression": { @@ -2911,7 +2911,7 @@ "arguments": [ { "argumentTypes": null, - "id": 1195, + "id": 2682, "isConstant": false, "isLValue": false, "isPure": false, @@ -2919,18 +2919,18 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "3767:28:2", + "src": "3703:28:6", "subExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1193, + "id": 2680, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1184, - "src": "3782:12:2", + "referencedDeclaration": 2671, + "src": "3718:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -2944,18 +2944,18 @@ "typeString": "bytes32" } ], - "id": 1192, + "id": 2679, "name": "isWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1797, - "src": "3768:13:2", + "referencedDeclaration": 3284, + "src": "3704:13:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1194, + "id": 2681, "isConstant": false, "isLValue": false, "isPure": false, @@ -2963,7 +2963,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3768:27:2", + "src": "3704:27:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2982,21 +2982,21 @@ "typeString": "bool" } ], - "id": 1191, + "id": 2678, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "3759:7:2", + "referencedDeclaration": 3705, + "src": "3695:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1196, + "id": 2683, "isConstant": false, "isLValue": false, "isPure": false, @@ -3004,15 +3004,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3759:37:2", + "src": "3695:37:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1197, + "id": 2684, "nodeType": "ExpressionStatement", - "src": "3759:37:2" + "src": "3695:37:6" }, { "expression": { @@ -3020,7 +3020,7 @@ "arguments": [ { "argumentTypes": null, - "id": 1202, + "id": 2689, "isConstant": false, "isLValue": false, "isPure": false, @@ -3028,18 +3028,18 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "3810:25:2", + "src": "3746:25:6", "subExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1200, + "id": 2687, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1184, - "src": "3822:12:2", + "referencedDeclaration": 2671, + "src": "3758:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3053,18 +3053,18 @@ "typeString": "bytes32" } ], - "id": 1199, + "id": 2686, "name": "appWasMade", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1812, - "src": "3811:10:2", + "referencedDeclaration": 3299, + "src": "3747:10:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1201, + "id": 2688, "isConstant": false, "isLValue": false, "isPure": false, @@ -3072,7 +3072,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3811:24:2", + "src": "3747:24:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3091,21 +3091,21 @@ "typeString": "bool" } ], - "id": 1198, + "id": 2685, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "3802:7:2", + "referencedDeclaration": 3705, + "src": "3738:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1203, + "id": 2690, "isConstant": false, "isLValue": false, "isPure": false, @@ -3113,15 +3113,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3802:34:2", + "src": "3738:34:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1204, + "id": 2691, "nodeType": "ExpressionStatement", - "src": "3802:34:2" + "src": "3738:34:6" }, { "expression": { @@ -3133,19 +3133,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1211, + "id": 2698, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1206, + "id": 2693, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1186, - "src": "3850:7:2", + "referencedDeclaration": 2673, + "src": "3786:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3159,14 +3159,14 @@ { "argumentTypes": null, "hexValue": "6d696e4465706f736974", - "id": 1209, + "id": 2696, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3879:12:2", + "src": "3815:12:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_1562a3cff09047061ba41141a6bb560ed15f1ca2968c821562d091212629199d", @@ -3184,32 +3184,32 @@ ], "expression": { "argumentTypes": null, - "id": 1207, + "id": 2694, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "3861:13:2", + "referencedDeclaration": 2633, + "src": "3797:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1208, + "id": 2695, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "3861:17:2", + "referencedDeclaration": 2349, + "src": "3797:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1210, + "id": 2697, "isConstant": false, "isLValue": false, "isPure": false, @@ -3217,13 +3217,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3861:31:2", + "src": "3797:31:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3850:42:2", + "src": "3786:42:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3237,21 +3237,21 @@ "typeString": "bool" } ], - "id": 1205, + "id": 2692, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "3842:7:2", + "referencedDeclaration": 3705, + "src": "3778:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1212, + "id": 2699, "isConstant": false, "isLValue": false, "isPure": false, @@ -3259,43 +3259,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3842:51:2", + "src": "3778:51:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1213, + "id": 2700, "nodeType": "ExpressionStatement", - "src": "3842:51:2" + "src": "3778:51:6" }, { "assignments": [ - 1215 + 2702 ], "declarations": [ { "constant": false, - "id": 1215, + "id": 2702, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1267, - "src": "3918:23:2", + "scope": 2754, + "src": "3854:23:6", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" }, "typeName": { "contractScope": null, - "id": 1214, + "id": 2701, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1117, - "src": "3918:7:2", + "referencedDeclaration": 2604, + "src": "3854:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" } }, @@ -3303,31 +3303,31 @@ "visibility": "internal" } ], - "id": 1219, + "id": 2706, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1216, + "id": 2703, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "3944:8:2", + "referencedDeclaration": 2627, + "src": "3880:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1218, + "id": 2705, "indexExpression": { "argumentTypes": null, - "id": 1217, + "id": 2704, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1184, - "src": "3953:12:2", + "referencedDeclaration": 2671, + "src": "3889:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3338,19 +3338,19 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3944:22:2", + "src": "3880:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "3918:48:2" + "src": "3854:48:6" }, { "expression": { "argumentTypes": null, - "id": 1225, + "id": 2712, "isConstant": false, "isLValue": false, "isPure": false, @@ -3359,26 +3359,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1220, + "id": 2707, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1215, - "src": "3972:7:2", + "referencedDeclaration": 2702, + "src": "3908:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1222, + "id": 2709, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1112, - "src": "3972:13:2", + "referencedDeclaration": 2599, + "src": "3908:13:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3390,18 +3390,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1223, + "id": 2710, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3988:3:2", + "referencedDeclaration": 3702, + "src": "3924:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1224, + "id": 2711, "isConstant": false, "isLValue": false, "isPure": false, @@ -3409,26 +3409,26 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3988:10:2", + "src": "3924:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3972:26:2", + "src": "3908:26:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1226, + "id": 2713, "nodeType": "ExpressionStatement", - "src": "3972:26:2" + "src": "3908:26:6" }, { "expression": { "argumentTypes": null, - "id": 1238, + "id": 2725, "isConstant": false, "isLValue": false, "isPure": false, @@ -3437,26 +3437,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1227, + "id": 2714, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1215, - "src": "4038:7:2", + "referencedDeclaration": 2702, + "src": "3974:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1229, + "id": 2716, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "applicationExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 1108, - "src": "4038:25:2", + "referencedDeclaration": 2595, + "src": "3974:25:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3473,14 +3473,14 @@ { "argumentTypes": null, "hexValue": "6170706c7953746167654c656e", - "id": 1235, + "id": 2722, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4104:15:2", + "src": "4040:15:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_e8c03b11eba3b2d069479ae0d3837927171e72e193c0acb726bbd53bdd5902da", @@ -3498,32 +3498,32 @@ ], "expression": { "argumentTypes": null, - "id": 1233, + "id": 2720, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "4086:13:2", + "referencedDeclaration": 2633, + "src": "4022:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1234, + "id": 2721, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "4086:17:2", + "referencedDeclaration": 2349, + "src": "4022:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1236, + "id": 2723, "isConstant": false, "isLValue": false, "isPure": false, @@ -3531,7 +3531,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4086:34:2", + "src": "4022:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3549,18 +3549,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1230, + "id": 2717, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3882, - "src": "4066:5:2", + "referencedDeclaration": 3692, + "src": "4002:5:6", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 1231, + "id": 2718, "isConstant": false, "isLValue": false, "isPure": false, @@ -3568,27 +3568,27 @@ "memberName": "timestamp", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4066:15:2", + "src": "4002:15:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1232, + "id": 2719, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "4066:19:2", + "referencedDeclaration": 3686, + "src": "4002:19:6", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 1237, + "id": 2724, "isConstant": false, "isLValue": false, "isPure": false, @@ -3596,26 +3596,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4066:55:2", + "src": "4002:55:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4038:83:2", + "src": "3974:83:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1239, + "id": 2726, "nodeType": "ExpressionStatement", - "src": "4038:83:2" + "src": "3974:83:6" }, { "expression": { "argumentTypes": null, - "id": 1244, + "id": 2731, "isConstant": false, "isLValue": false, "isPure": false, @@ -3624,26 +3624,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1240, + "id": 2727, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1215, - "src": "4127:7:2", + "referencedDeclaration": 2702, + "src": "4063:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1242, + "id": 2729, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "4127:23:2", + "referencedDeclaration": 2601, + "src": "4063:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3653,26 +3653,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1243, + "id": 2730, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1186, - "src": "4153:7:2", + "referencedDeclaration": 2673, + "src": "4089:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4127:33:2", + "src": "4063:33:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1245, + "id": 2732, "nodeType": "ExpressionStatement", - "src": "4127:33:2" + "src": "4063:33:6" }, { "expression": { @@ -3685,26 +3685,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1249, + "id": 2736, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1215, - "src": "4249:7:2", + "referencedDeclaration": 2702, + "src": "4185:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1250, + "id": 2737, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1112, - "src": "4249:13:2", + "referencedDeclaration": 2599, + "src": "4185:13:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3712,25 +3712,25 @@ }, { "argumentTypes": null, - "id": 1251, + "id": 2738, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3921, - "src": "4264:4:2", + "referencedDeclaration": 3729, + "src": "4200:4:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$2106", + "typeIdentifier": "t_contract$_Registry_$3593", "typeString": "contract Registry" } }, { "argumentTypes": null, - "id": 1252, + "id": 2739, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1186, - "src": "4270:7:2", + "referencedDeclaration": 2673, + "src": "4206:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3744,7 +3744,7 @@ "typeString": "address" }, { - "typeIdentifier": "t_contract$_Registry_$2106", + "typeIdentifier": "t_contract$_Registry_$3593", "typeString": "contract Registry" }, { @@ -3754,32 +3754,32 @@ ], "expression": { "argumentTypes": null, - "id": 1247, + "id": 2734, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "4230:5:2", + "referencedDeclaration": 2629, + "src": "4166:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 1248, + "id": 2735, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 3747, - "src": "4230:18:2", + "referencedDeclaration": 390, + "src": "4166:18:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 1253, + "id": 2740, "isConstant": false, "isLValue": false, "isPure": false, @@ -3787,7 +3787,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4230:48:2", + "src": "4166:48:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3801,21 +3801,21 @@ "typeString": "bool" } ], - "id": 1246, + "id": 2733, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4222:7:2", + "referencedDeclaration": 3705, + "src": "4158:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1254, + "id": 2741, "isConstant": false, "isLValue": false, "isPure": false, @@ -3823,28 +3823,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4222:57:2", + "src": "4158:57:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1255, + "id": 2742, "nodeType": "ExpressionStatement", - "src": "4222:57:2" + "src": "4158:57:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1257, + "id": 2744, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1184, - "src": "4299:12:2", + "referencedDeclaration": 2671, + "src": "4247:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -3852,12 +3852,12 @@ }, { "argumentTypes": null, - "id": 1258, + "id": 2745, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1186, - "src": "4313:7:2", + "referencedDeclaration": 2673, + "src": "4267:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3867,26 +3867,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1259, + "id": 2746, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1215, - "src": "4322:7:2", + "referencedDeclaration": 2702, + "src": "4282:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1260, + "id": 2747, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "applicationExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 1108, - "src": "4322:25:2", + "referencedDeclaration": 2595, + "src": "4282:25:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3894,12 +3894,12 @@ }, { "argumentTypes": null, - "id": 1261, + "id": 2748, "name": "_data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1188, - "src": "4349:5:2", + "referencedDeclaration": 2675, + "src": "4315:5:6", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" @@ -3909,18 +3909,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1262, + "id": 2749, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4356:3:2", + "referencedDeclaration": 3702, + "src": "4328:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1263, + "id": 2750, "isConstant": false, "isLValue": false, "isPure": false, @@ -3928,7 +3928,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4356:10:2", + "src": "4328:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3958,18 +3958,18 @@ "typeString": "address" } ], - "id": 1256, + "id": 2743, "name": "_Application", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1021, - "src": "4286:12:2", + "referencedDeclaration": 2508, + "src": "4227:12:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$_t_address_$returns$__$", "typeString": "function (bytes32,uint256,uint256,string memory,address)" } }, - "id": 1264, + "id": 2751, "isConstant": false, "isLValue": false, "isPure": false, @@ -3977,20 +3977,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4286:81:2", + "src": "4227:117:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1265, - "nodeType": "ExpressionStatement", - "src": "4286:81:2" + "id": 2752, + "nodeType": "EmitStatement", + "src": "4222:122:6" } ] }, "documentation": "@dev Allows a user to start an application. Takes tokens from user and sets\napply stage end time.\n@param _listingHash The hash of a potential listing a user is applying to add to the registry\n@param _amount The number of ERC20 tokens a user is willing to potentially stake\n@param _data Extra data relevant to the application. Think IPFS hashes.", - "id": 1267, + "id": 2754, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -3998,16 +3998,16 @@ "name": "apply", "nodeType": "FunctionDefinition", "parameters": { - "id": 1189, + "id": 2676, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1184, + "id": 2671, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1267, - "src": "3694:20:2", + "scope": 2754, + "src": "3630:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4015,10 +4015,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1183, + "id": 2670, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "3694:7:2", + "src": "3630:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4029,11 +4029,11 @@ }, { "constant": false, - "id": 1186, + "id": 2673, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1267, - "src": "3716:12:2", + "scope": 2754, + "src": "3652:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4041,10 +4041,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1185, + "id": 2672, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3716:4:2", + "src": "3652:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4055,11 +4055,11 @@ }, { "constant": false, - "id": 1188, + "id": 2675, "name": "_data", "nodeType": "VariableDeclaration", - "scope": 1267, - "src": "3730:12:2", + "scope": 2754, + "src": "3666:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4067,10 +4067,10 @@ "typeString": "string" }, "typeName": { - "id": 1187, + "id": 2674, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3730:6:2", + "src": "3666:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4080,54 +4080,54 @@ "visibility": "internal" } ], - "src": "3693:50:2" + "src": "3629:50:6" }, "payable": false, "returnParameters": { - "id": 1190, + "id": 2677, "nodeType": "ParameterList", "parameters": [], - "src": "3753:0:2" + "src": "3689:0:6" }, - "scope": 2106, - "src": "3679:693:2", + "scope": 3593, + "src": "3615:734:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1313, + "id": 2800, "nodeType": "Block", - "src": "4691:278:2", + "src": "4668:313:6", "statements": [ { "assignments": [ - 1275 + 2762 ], "declarations": [ { "constant": false, - "id": 1275, + "id": 2762, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1314, - "src": "4697:23:2", + "scope": 2801, + "src": "4674:23:6", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" }, "typeName": { "contractScope": null, - "id": 1274, + "id": 2761, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1117, - "src": "4697:7:2", + "referencedDeclaration": 2604, + "src": "4674:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" } }, @@ -4135,31 +4135,31 @@ "visibility": "internal" } ], - "id": 1279, + "id": 2766, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1276, + "id": 2763, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "4723:8:2", + "referencedDeclaration": 2627, + "src": "4700:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1278, + "id": 2765, "indexExpression": { "argumentTypes": null, - "id": 1277, + "id": 2764, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1269, - "src": "4732:12:2", + "referencedDeclaration": 2756, + "src": "4709:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4170,14 +4170,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4723:22:2", + "src": "4700:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "4697:48:2" + "src": "4674:48:6" }, { "expression": { @@ -4189,7 +4189,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1285, + "id": 2772, "isConstant": false, "isLValue": false, "isPure": false, @@ -4198,26 +4198,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1281, + "id": 2768, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1275, - "src": "4760:7:2", + "referencedDeclaration": 2762, + "src": "4737:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1282, + "id": 2769, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1112, - "src": "4760:13:2", + "referencedDeclaration": 2599, + "src": "4737:13:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4229,18 +4229,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1283, + "id": 2770, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4777:3:2", + "referencedDeclaration": 3702, + "src": "4754:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1284, + "id": 2771, "isConstant": false, "isLValue": false, "isPure": false, @@ -4248,13 +4248,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4777:10:2", + "src": "4754:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4760:27:2", + "src": "4737:27:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4268,21 +4268,21 @@ "typeString": "bool" } ], - "id": 1280, + "id": 2767, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4752:7:2", + "referencedDeclaration": 3705, + "src": "4729:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1286, + "id": 2773, "isConstant": false, "isLValue": false, "isPure": false, @@ -4290,20 +4290,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4752:36:2", + "src": "4729:36:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1287, + "id": 2774, "nodeType": "ExpressionStatement", - "src": "4752:36:2" + "src": "4729:36:6" }, { "expression": { "argumentTypes": null, - "id": 1292, + "id": 2779, "isConstant": false, "isLValue": false, "isPure": false, @@ -4312,26 +4312,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1288, + "id": 2775, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1275, - "src": "4795:7:2", + "referencedDeclaration": 2762, + "src": "4772:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1290, + "id": 2777, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "4795:23:2", + "referencedDeclaration": 2601, + "src": "4772:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4341,26 +4341,26 @@ "operator": "+=", "rightHandSide": { "argumentTypes": null, - "id": 1291, + "id": 2778, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "4822:7:2", + "referencedDeclaration": 2758, + "src": "4799:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4795:34:2", + "src": "4772:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1293, + "id": 2780, "nodeType": "ExpressionStatement", - "src": "4795:34:2" + "src": "4772:34:6" }, { "expression": { @@ -4373,18 +4373,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1297, + "id": 2784, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4862:3:2", + "referencedDeclaration": 3702, + "src": "4839:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1298, + "id": 2785, "isConstant": false, "isLValue": false, "isPure": false, @@ -4392,7 +4392,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4862:10:2", + "src": "4839:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4400,25 +4400,25 @@ }, { "argumentTypes": null, - "id": 1299, + "id": 2786, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3921, - "src": "4874:4:2", + "referencedDeclaration": 3729, + "src": "4851:4:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$2106", + "typeIdentifier": "t_contract$_Registry_$3593", "typeString": "contract Registry" } }, { "argumentTypes": null, - "id": 1300, + "id": 2787, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "4880:7:2", + "referencedDeclaration": 2758, + "src": "4857:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4432,7 +4432,7 @@ "typeString": "address" }, { - "typeIdentifier": "t_contract$_Registry_$2106", + "typeIdentifier": "t_contract$_Registry_$3593", "typeString": "contract Registry" }, { @@ -4442,32 +4442,32 @@ ], "expression": { "argumentTypes": null, - "id": 1295, + "id": 2782, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "4843:5:2", + "referencedDeclaration": 2629, + "src": "4820:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 1296, + "id": 2783, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 3747, - "src": "4843:18:2", + "referencedDeclaration": 390, + "src": "4820:18:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 1301, + "id": 2788, "isConstant": false, "isLValue": false, "isPure": false, @@ -4475,7 +4475,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4843:45:2", + "src": "4820:45:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4489,21 +4489,21 @@ "typeString": "bool" } ], - "id": 1294, + "id": 2781, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4835:7:2", + "referencedDeclaration": 3705, + "src": "4812:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1302, + "id": 2789, "isConstant": false, "isLValue": false, "isPure": false, @@ -4511,28 +4511,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4835:54:2", + "src": "4812:54:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1303, + "id": 2790, "nodeType": "ExpressionStatement", - "src": "4835:54:2" + "src": "4812:54:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1305, + "id": 2792, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1269, - "src": "4905:12:2", + "referencedDeclaration": 2756, + "src": "4894:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4540,12 +4540,12 @@ }, { "argumentTypes": null, - "id": 1306, + "id": 2793, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "4919:7:2", + "referencedDeclaration": 2758, + "src": "4914:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4555,26 +4555,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1307, + "id": 2794, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1275, - "src": "4928:7:2", + "referencedDeclaration": 2762, + "src": "4929:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1308, + "id": 2795, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "4928:23:2", + "referencedDeclaration": 2601, + "src": "4929:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4584,18 +4584,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1309, + "id": 2796, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4953:3:2", + "referencedDeclaration": 3702, + "src": "4960:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1310, + "id": 2797, "isConstant": false, "isLValue": false, "isPure": false, @@ -4603,7 +4603,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4953:10:2", + "src": "4960:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4629,18 +4629,18 @@ "typeString": "address" } ], - "id": 1304, + "id": 2791, "name": "_Deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1045, - "src": "4896:8:2", + "referencedDeclaration": 2532, + "src": "4878:8:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (bytes32,uint256,uint256,address)" } }, - "id": 1311, + "id": 2798, "isConstant": false, "isLValue": false, "isPure": false, @@ -4648,20 +4648,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4896:68:2", + "src": "4878:98:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1312, - "nodeType": "ExpressionStatement", - "src": "4896:68:2" + "id": 2799, + "nodeType": "EmitStatement", + "src": "4873:103:6" } ] }, "documentation": "@dev Allows the owner of a listingHash to increase their unstaked deposit.\n@param _listingHash A listingHash msg.sender is the owner of\n@param _amount The number of ERC20 tokens to increase a user's unstaked deposit", - "id": 1314, + "id": 2801, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -4669,16 +4669,16 @@ "name": "deposit", "nodeType": "FunctionDefinition", "parameters": { - "id": 1272, + "id": 2759, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1269, + "id": 2756, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1314, - "src": "4646:20:2", + "scope": 2801, + "src": "4623:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4686,10 +4686,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1268, + "id": 2755, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4646:7:2", + "src": "4623:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4700,11 +4700,11 @@ }, { "constant": false, - "id": 1271, + "id": 2758, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1314, - "src": "4668:12:2", + "scope": 2801, + "src": "4645:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4712,10 +4712,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1270, + "id": 2757, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4668:4:2", + "src": "4645:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4725,54 +4725,54 @@ "visibility": "internal" } ], - "src": "4645:36:2" + "src": "4622:36:6" }, "payable": false, "returnParameters": { - "id": 1273, + "id": 2760, "nodeType": "ParameterList", "parameters": [], - "src": "4691:0:2" + "src": "4668:0:6" }, - "scope": 2106, - "src": "4629:340:2", + "scope": 3593, + "src": "4606:375:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1378, + "id": 2865, "nodeType": "Block", - "src": "5291:403:2", + "src": "5303:438:6", "statements": [ { "assignments": [ - 1322 + 2809 ], "declarations": [ { "constant": false, - "id": 1322, + "id": 2809, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1379, - "src": "5297:23:2", + "scope": 2866, + "src": "5309:23:6", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" }, "typeName": { "contractScope": null, - "id": 1321, + "id": 2808, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1117, - "src": "5297:7:2", + "referencedDeclaration": 2604, + "src": "5309:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" } }, @@ -4780,31 +4780,31 @@ "visibility": "internal" } ], - "id": 1326, + "id": 2813, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1323, + "id": 2810, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "5323:8:2", + "referencedDeclaration": 2627, + "src": "5335:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1325, + "id": 2812, "indexExpression": { "argumentTypes": null, - "id": 1324, + "id": 2811, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1316, - "src": "5332:12:2", + "referencedDeclaration": 2803, + "src": "5344:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -4815,14 +4815,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5323:22:2", + "src": "5335:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5297:48:2" + "src": "5309:48:6" }, { "expression": { @@ -4834,7 +4834,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1332, + "id": 2819, "isConstant": false, "isLValue": false, "isPure": false, @@ -4843,26 +4843,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1328, + "id": 2815, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1322, - "src": "5360:7:2", + "referencedDeclaration": 2809, + "src": "5372:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1329, + "id": 2816, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1112, - "src": "5360:13:2", + "referencedDeclaration": 2599, + "src": "5372:13:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4874,18 +4874,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1330, + "id": 2817, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5377:3:2", + "referencedDeclaration": 3702, + "src": "5389:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1331, + "id": 2818, "isConstant": false, "isLValue": false, "isPure": false, @@ -4893,13 +4893,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5377:10:2", + "src": "5389:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "5360:27:2", + "src": "5372:27:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4913,21 +4913,21 @@ "typeString": "bool" } ], - "id": 1327, + "id": 2814, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5352:7:2", + "referencedDeclaration": 3705, + "src": "5364:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1333, + "id": 2820, "isConstant": false, "isLValue": false, "isPure": false, @@ -4935,15 +4935,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5352:36:2", + "src": "5364:36:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1334, + "id": 2821, "nodeType": "ExpressionStatement", - "src": "5352:36:2" + "src": "5364:36:6" }, { "expression": { @@ -4955,19 +4955,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1339, + "id": 2826, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1336, + "id": 2823, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1318, - "src": "5402:7:2", + "referencedDeclaration": 2805, + "src": "5414:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4979,32 +4979,32 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1337, + "id": 2824, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1322, - "src": "5413:7:2", + "referencedDeclaration": 2809, + "src": "5425:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1338, + "id": 2825, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "5413:23:2", + "referencedDeclaration": 2601, + "src": "5425:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5402:34:2", + "src": "5414:34:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5018,21 +5018,21 @@ "typeString": "bool" } ], - "id": 1335, + "id": 2822, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5394:7:2", + "referencedDeclaration": 3705, + "src": "5406:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1340, + "id": 2827, "isConstant": false, "isLValue": false, "isPure": false, @@ -5040,15 +5040,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5394:43:2", + "src": "5406:43:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1341, + "id": 2828, "nodeType": "ExpressionStatement", - "src": "5394:43:2" + "src": "5406:43:6" }, { "expression": { @@ -5060,7 +5060,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1351, + "id": 2838, "isConstant": false, "isLValue": false, "isPure": false, @@ -5071,7 +5071,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1346, + "id": 2833, "isConstant": false, "isLValue": false, "isPure": false, @@ -5080,26 +5080,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1343, + "id": 2830, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1322, - "src": "5451:7:2", + "referencedDeclaration": 2809, + "src": "5463:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1344, + "id": 2831, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "5451:23:2", + "referencedDeclaration": 2601, + "src": "5463:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5109,18 +5109,18 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 1345, + "id": 2832, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1318, - "src": "5477:7:2", + "referencedDeclaration": 2805, + "src": "5489:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5451:33:2", + "src": "5463:33:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5134,14 +5134,14 @@ { "argumentTypes": null, "hexValue": "6d696e4465706f736974", - "id": 1349, + "id": 2836, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5506:12:2", + "src": "5518:12:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_1562a3cff09047061ba41141a6bb560ed15f1ca2968c821562d091212629199d", @@ -5159,32 +5159,32 @@ ], "expression": { "argumentTypes": null, - "id": 1347, + "id": 2834, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "5488:13:2", + "referencedDeclaration": 2633, + "src": "5500:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1348, + "id": 2835, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "5488:17:2", + "referencedDeclaration": 2349, + "src": "5500:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1350, + "id": 2837, "isConstant": false, "isLValue": false, "isPure": false, @@ -5192,13 +5192,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5488:31:2", + "src": "5500:31:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5451:68:2", + "src": "5463:68:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5212,21 +5212,21 @@ "typeString": "bool" } ], - "id": 1342, + "id": 2829, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5443:7:2", + "referencedDeclaration": 3705, + "src": "5455:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1352, + "id": 2839, "isConstant": false, "isLValue": false, "isPure": false, @@ -5234,20 +5234,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5443:77:2", + "src": "5455:77:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1353, + "id": 2840, "nodeType": "ExpressionStatement", - "src": "5443:77:2" + "src": "5455:77:6" }, { "expression": { "argumentTypes": null, - "id": 1358, + "id": 2845, "isConstant": false, "isLValue": false, "isPure": false, @@ -5256,26 +5256,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1354, + "id": 2841, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1322, - "src": "5527:7:2", + "referencedDeclaration": 2809, + "src": "5539:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1356, + "id": 2843, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "5527:23:2", + "referencedDeclaration": 2601, + "src": "5539:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5285,26 +5285,26 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 1357, + "id": 2844, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1318, - "src": "5554:7:2", + "referencedDeclaration": 2805, + "src": "5566:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5527:34:2", + "src": "5539:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1359, + "id": 2846, "nodeType": "ExpressionStatement", - "src": "5527:34:2" + "src": "5539:34:6" }, { "expression": { @@ -5317,18 +5317,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1363, + "id": 2850, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5590:3:2", + "referencedDeclaration": 3702, + "src": "5602:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1364, + "id": 2851, "isConstant": false, "isLValue": false, "isPure": false, @@ -5336,7 +5336,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5590:10:2", + "src": "5602:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5344,12 +5344,12 @@ }, { "argumentTypes": null, - "id": 1365, + "id": 2852, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1318, - "src": "5602:7:2", + "referencedDeclaration": 2805, + "src": "5614:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5369,32 +5369,32 @@ ], "expression": { "argumentTypes": null, - "id": 1361, + "id": 2848, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "5575:5:2", + "referencedDeclaration": 2629, + "src": "5587:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 1362, + "id": 2849, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "5575:14:2", + "referencedDeclaration": 431, + "src": "5587:14:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 1366, + "id": 2853, "isConstant": false, "isLValue": false, "isPure": false, @@ -5402,7 +5402,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5575:35:2", + "src": "5587:35:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5416,21 +5416,21 @@ "typeString": "bool" } ], - "id": 1360, + "id": 2847, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5567:7:2", + "referencedDeclaration": 3705, + "src": "5579:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1367, + "id": 2854, "isConstant": false, "isLValue": false, "isPure": false, @@ -5438,28 +5438,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5567:44:2", + "src": "5579:44:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1368, + "id": 2855, "nodeType": "ExpressionStatement", - "src": "5567:44:2" + "src": "5579:44:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1370, + "id": 2857, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1316, - "src": "5630:12:2", + "referencedDeclaration": 2803, + "src": "5654:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5467,12 +5467,12 @@ }, { "argumentTypes": null, - "id": 1371, + "id": 2858, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1318, - "src": "5644:7:2", + "referencedDeclaration": 2805, + "src": "5674:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5482,26 +5482,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1372, + "id": 2859, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1322, - "src": "5653:7:2", + "referencedDeclaration": 2809, + "src": "5689:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1373, + "id": 2860, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "5653:23:2", + "referencedDeclaration": 2601, + "src": "5689:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5511,18 +5511,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1374, + "id": 2861, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5678:3:2", + "referencedDeclaration": 3702, + "src": "5720:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1375, + "id": 2862, "isConstant": false, "isLValue": false, "isPure": false, @@ -5530,7 +5530,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5678:10:2", + "src": "5720:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5556,18 +5556,18 @@ "typeString": "address" } ], - "id": 1369, + "id": 2856, "name": "_Withdrawal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1055, - "src": "5618:11:2", + "referencedDeclaration": 2542, + "src": "5635:11:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (bytes32,uint256,uint256,address)" } }, - "id": 1376, + "id": 2863, "isConstant": false, "isLValue": false, "isPure": false, @@ -5575,20 +5575,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5618:71:2", + "src": "5635:101:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1377, - "nodeType": "ExpressionStatement", - "src": "5618:71:2" + "id": 2864, + "nodeType": "EmitStatement", + "src": "5630:106:6" } ] }, "documentation": "@dev Allows the owner of a listingHash to decrease their unstaked deposit.\n@param _listingHash A listingHash msg.sender is the owner of.\n@param _amount The number of ERC20 tokens to withdraw from the unstaked deposit.", - "id": 1379, + "id": 2866, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -5596,16 +5596,16 @@ "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 1319, + "id": 2806, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1316, + "id": 2803, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1379, - "src": "5246:20:2", + "scope": 2866, + "src": "5258:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5613,10 +5613,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1315, + "id": 2802, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5246:7:2", + "src": "5258:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5627,11 +5627,11 @@ }, { "constant": false, - "id": 1318, + "id": 2805, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1379, - "src": "5268:12:2", + "scope": 2866, + "src": "5280:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5639,10 +5639,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1317, + "id": 2804, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5268:4:2", + "src": "5280:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5652,54 +5652,54 @@ "visibility": "internal" } ], - "src": "5245:36:2" + "src": "5257:36:6" }, "payable": false, "returnParameters": { - "id": 1320, + "id": 2807, "nodeType": "ParameterList", "parameters": [], - "src": "5291:0:2" + "src": "5303:0:6" }, - "scope": 2106, - "src": "5228:466:2", + "scope": 3593, + "src": "5240:501:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1425, + "id": 2912, "nodeType": "Block", - "src": "5992:384:2", + "src": "6039:389:6", "statements": [ { "assignments": [ - 1385 + 2872 ], "declarations": [ { "constant": false, - "id": 1385, + "id": 2872, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1426, - "src": "5998:23:2", + "scope": 2913, + "src": "6045:23:6", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" }, "typeName": { "contractScope": null, - "id": 1384, + "id": 2871, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1117, - "src": "5998:7:2", + "referencedDeclaration": 2604, + "src": "6045:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" } }, @@ -5707,31 +5707,31 @@ "visibility": "internal" } ], - "id": 1389, + "id": 2876, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1386, + "id": 2873, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "6024:8:2", + "referencedDeclaration": 2627, + "src": "6071:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1388, + "id": 2875, "indexExpression": { "argumentTypes": null, - "id": 1387, + "id": 2874, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "6033:12:2", + "referencedDeclaration": 2868, + "src": "6080:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5742,14 +5742,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6024:22:2", + "src": "6071:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5998:48:2" + "src": "6045:48:6" }, { "expression": { @@ -5761,7 +5761,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1395, + "id": 2882, "isConstant": false, "isLValue": false, "isPure": false, @@ -5770,18 +5770,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1391, + "id": 2878, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "6061:3:2", + "referencedDeclaration": 3702, + "src": "6108:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1392, + "id": 2879, "isConstant": false, "isLValue": false, "isPure": false, @@ -5789,7 +5789,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6061:10:2", + "src": "6108:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5801,32 +5801,32 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1393, + "id": 2880, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1385, - "src": "6075:7:2", + "referencedDeclaration": 2872, + "src": "6122:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1394, + "id": 2881, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1112, - "src": "6075:13:2", + "referencedDeclaration": 2599, + "src": "6122:13:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6061:27:2", + "src": "6108:27:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5840,21 +5840,21 @@ "typeString": "bool" } ], - "id": 1390, + "id": 2877, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "6053:7:2", + "referencedDeclaration": 3705, + "src": "6100:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1396, + "id": 2883, "isConstant": false, "isLValue": false, "isPure": false, @@ -5862,15 +5862,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6053:36:2", + "src": "6100:36:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1397, + "id": 2884, "nodeType": "ExpressionStatement", - "src": "6053:36:2" + "src": "6100:36:6" }, { "expression": { @@ -5881,12 +5881,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1400, + "id": 2887, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "6117:12:2", + "referencedDeclaration": 2868, + "src": "6164:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -5900,18 +5900,18 @@ "typeString": "bytes32" } ], - "id": 1399, + "id": 2886, "name": "isWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1797, - "src": "6103:13:2", + "referencedDeclaration": 3284, + "src": "6150:13:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1401, + "id": 2888, "isConstant": false, "isLValue": false, "isPure": false, @@ -5919,7 +5919,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6103:27:2", + "src": "6150:27:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5933,21 +5933,21 @@ "typeString": "bool" } ], - "id": 1398, + "id": 2885, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "6095:7:2", + "referencedDeclaration": 3705, + "src": "6142:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1402, + "id": 2889, "isConstant": false, "isLValue": false, "isPure": false, @@ -5955,15 +5955,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6095:36:2", + "src": "6142:36:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1403, + "id": 2890, "nodeType": "ExpressionStatement", - "src": "6095:36:2" + "src": "6142:36:6" }, { "expression": { @@ -5975,7 +5975,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1414, + "id": 2901, "isConstant": false, "isLValue": false, "isPure": false, @@ -5986,7 +5986,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1408, + "id": 2895, "isConstant": false, "isLValue": false, "isPure": false, @@ -5995,26 +5995,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1405, + "id": 2892, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1385, - "src": "6190:7:2", + "referencedDeclaration": 2872, + "src": "6237:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1406, + "id": 2893, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "6190:19:2", + "referencedDeclaration": 2603, + "src": "6237:19:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6025,14 +6025,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1407, + "id": 2894, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6213:1:2", + "src": "6260:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -6040,7 +6040,7 @@ }, "value": "0" }, - "src": "6190:24:2", + "src": "6237:24:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6054,42 +6054,42 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1409, + "id": 2896, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "6218:10:2", + "referencedDeclaration": 2623, + "src": "6265:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1412, + "id": 2899, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1410, + "id": 2897, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1385, - "src": "6229:7:2", + "referencedDeclaration": 2872, + "src": "6276:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1411, + "id": 2898, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "6229:19:2", + "referencedDeclaration": 2603, + "src": "6276:19:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6100,27 +6100,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6218:31:2", + "src": "6265:31:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1413, + "id": 2900, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 1123, - "src": "6218:40:2", + "referencedDeclaration": 2610, + "src": "6265:40:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6190:68:2", + "src": "6237:68:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6134,21 +6134,21 @@ "typeString": "bool" } ], - "id": 1404, + "id": 2891, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "6182:7:2", + "referencedDeclaration": 3705, + "src": "6229:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1415, + "id": 2902, "isConstant": false, "isLValue": false, "isPure": false, @@ -6156,15 +6156,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6182:77:2", + "src": "6229:77:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1416, + "id": 2903, "nodeType": "ExpressionStatement", - "src": "6182:77:2" + "src": "6229:77:6" }, { "expression": { @@ -6172,12 +6172,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1418, + "id": 2905, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "6321:12:2", + "referencedDeclaration": 2868, + "src": "6368:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6191,18 +6191,18 @@ "typeString": "bytes32" } ], - "id": 1417, + "id": 2904, "name": "resetListing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2105, - "src": "6308:12:2", + "referencedDeclaration": 3592, + "src": "6355:12:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1419, + "id": 2906, "isConstant": false, "isLValue": false, "isPure": false, @@ -6210,28 +6210,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6308:26:2", + "src": "6355:26:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1420, + "id": 2907, "nodeType": "ExpressionStatement", - "src": "6308:26:2" + "src": "6355:26:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1422, + "id": 2909, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "6358:12:2", + "referencedDeclaration": 2868, + "src": "6410:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6245,18 +6245,18 @@ "typeString": "bytes32" } ], - "id": 1421, + "id": 2908, "name": "_ListingWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1071, - "src": "6340:17:2", + "referencedDeclaration": 2558, + "src": "6392:17:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1423, + "id": 2910, "isConstant": false, "isLValue": false, "isPure": false, @@ -6264,20 +6264,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6340:31:2", + "src": "6392:31:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1424, - "nodeType": "ExpressionStatement", - "src": "6340:31:2" + "id": 2911, + "nodeType": "EmitStatement", + "src": "6387:36:6" } ] }, "documentation": "@dev Allows the owner of a listingHash to remove the listingHash from the whitelist\nReturns all tokens to the owner of the listingHash\n@param _listingHash A listingHash msg.sender is the owner of.", - "id": 1426, + "id": 2913, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -6285,16 +6285,16 @@ "name": "exit", "nodeType": "FunctionDefinition", "parameters": { - "id": 1382, + "id": 2869, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1381, + "id": 2868, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1426, - "src": "5961:20:2", + "scope": 2913, + "src": "6008:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6302,10 +6302,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1380, + "id": 2867, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5961:7:2", + "src": "6008:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6315,54 +6315,54 @@ "visibility": "internal" } ], - "src": "5960:22:2" + "src": "6007:22:6" }, "payable": false, "returnParameters": { - "id": 1383, + "id": 2870, "nodeType": "ParameterList", "parameters": [], - "src": "5992:0:2" + "src": "6039:0:6" }, - "scope": 2106, - "src": "5947:429:2", + "scope": 3593, + "src": "5994:434:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1577, + "id": 3064, "nodeType": "Block", - "src": "6978:1475:2", + "src": "7030:1536:6", "statements": [ { "assignments": [ - 1436 + 2923 ], "declarations": [ { "constant": false, - "id": 1436, + "id": 2923, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "6984:23:2", + "scope": 3065, + "src": "7036:23:6", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" }, "typeName": { "contractScope": null, - "id": 1435, + "id": 2922, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1117, - "src": "6984:7:2", + "referencedDeclaration": 2604, + "src": "7036:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" } }, @@ -6370,31 +6370,31 @@ "visibility": "internal" } ], - "id": 1440, + "id": 2927, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1437, + "id": 2924, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "7010:8:2", + "referencedDeclaration": 2627, + "src": "7062:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1439, + "id": 2926, "indexExpression": { "argumentTypes": null, - "id": 1438, + "id": 2925, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1428, - "src": "7019:12:2", + "referencedDeclaration": 2915, + "src": "7071:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6405,27 +6405,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7010:22:2", + "src": "7062:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "6984:48:2" + "src": "7036:48:6" }, { "assignments": [ - 1442 + 2929 ], "declarations": [ { "constant": false, - "id": 1442, - "name": "deposit", + "id": 2929, + "name": "minDeposit", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "7038:12:2", + "scope": 3065, + "src": "7090:15:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6433,10 +6433,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1441, + "id": 2928, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7038:4:2", + "src": "7090:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6446,21 +6446,21 @@ "visibility": "internal" } ], - "id": 1447, + "id": 2934, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "hexValue": "6d696e4465706f736974", - "id": 1445, + "id": 2932, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7071:12:2", + "src": "7126:12:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_1562a3cff09047061ba41141a6bb560ed15f1ca2968c821562d091212629199d", @@ -6478,32 +6478,32 @@ ], "expression": { "argumentTypes": null, - "id": 1443, + "id": 2930, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "7053:13:2", + "referencedDeclaration": 2633, + "src": "7108:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1444, + "id": 2931, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "7053:17:2", + "referencedDeclaration": 2349, + "src": "7108:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1446, + "id": 2933, "isConstant": false, "isLValue": false, "isPure": false, @@ -6511,14 +6511,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7053:31:2", + "src": "7108:31:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "7038:46:2" + "src": "7090:49:6" }, { "expression": { @@ -6530,7 +6530,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1454, + "id": 2941, "isConstant": false, "isLValue": false, "isPure": false, @@ -6540,12 +6540,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1450, + "id": 2937, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1428, - "src": "7176:12:2", + "referencedDeclaration": 2915, + "src": "7231:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6559,18 +6559,18 @@ "typeString": "bytes32" } ], - "id": 1449, + "id": 2936, "name": "appWasMade", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1812, - "src": "7165:10:2", + "referencedDeclaration": 3299, + "src": "7220:10:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1451, + "id": 2938, "isConstant": false, "isLValue": false, "isPure": false, @@ -6578,7 +6578,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7165:24:2", + "src": "7220:24:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6590,32 +6590,32 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1452, + "id": 2939, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1436, - "src": "7193:7:2", + "referencedDeclaration": 2923, + "src": "7248:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1453, + "id": 2940, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "whitelisted", "nodeType": "MemberAccess", - "referencedDeclaration": 1110, - "src": "7193:19:2", + "referencedDeclaration": 2597, + "src": "7248:19:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7165:47:2", + "src": "7220:47:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6629,21 +6629,21 @@ "typeString": "bool" } ], - "id": 1448, + "id": 2935, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "7157:7:2", + "referencedDeclaration": 3705, + "src": "7212:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1455, + "id": 2942, "isConstant": false, "isLValue": false, "isPure": false, @@ -6651,15 +6651,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7157:56:2", + "src": "7212:56:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1456, + "id": 2943, "nodeType": "ExpressionStatement", - "src": "7157:56:2" + "src": "7212:56:6" }, { "expression": { @@ -6671,7 +6671,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1467, + "id": 2954, "isConstant": false, "isLValue": false, "isPure": false, @@ -6682,7 +6682,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1461, + "id": 2948, "isConstant": false, "isLValue": false, "isPure": false, @@ -6691,26 +6691,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1458, + "id": 2945, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1436, - "src": "7262:7:2", + "referencedDeclaration": 2923, + "src": "7317:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1459, + "id": 2946, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "7262:19:2", + "referencedDeclaration": 2603, + "src": "7317:19:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6721,14 +6721,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1460, + "id": 2947, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7285:1:2", + "src": "7340:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -6736,7 +6736,7 @@ }, "value": "0" }, - "src": "7262:24:2", + "src": "7317:24:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6750,42 +6750,42 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1462, + "id": 2949, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "7290:10:2", + "referencedDeclaration": 2623, + "src": "7345:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1465, + "id": 2952, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1463, + "id": 2950, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1436, - "src": "7301:7:2", + "referencedDeclaration": 2923, + "src": "7356:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1464, + "id": 2951, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "7301:19:2", + "referencedDeclaration": 2603, + "src": "7356:19:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6796,27 +6796,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7290:31:2", + "src": "7345:31:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1466, + "id": 2953, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 1123, - "src": "7290:40:2", + "referencedDeclaration": 2610, + "src": "7345:40:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7262:68:2", + "src": "7317:68:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6830,21 +6830,21 @@ "typeString": "bool" } ], - "id": 1457, + "id": 2944, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "7254:7:2", + "referencedDeclaration": 3705, + "src": "7309:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1468, + "id": 2955, "isConstant": false, "isLValue": false, "isPure": false, @@ -6852,15 +6852,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7254:77:2", + "src": "7309:77:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1469, + "id": 2956, "nodeType": "ExpressionStatement", - "src": "7254:77:2" + "src": "7309:77:6" }, { "condition": { @@ -6869,7 +6869,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1473, + "id": 2960, "isConstant": false, "isLValue": false, "isPure": false, @@ -6878,26 +6878,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1470, + "id": 2957, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1436, - "src": "7342:7:2", + "referencedDeclaration": 2923, + "src": "7397:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1471, + "id": 2958, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "7342:23:2", + "referencedDeclaration": 2601, + "src": "7397:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6907,31 +6907,31 @@ "operator": "<", "rightExpression": { "argumentTypes": null, - "id": 1472, - "name": "deposit", + "id": 2959, + "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "7368:7:2", + "referencedDeclaration": 2929, + "src": "7423:10:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7342:33:2", + "src": "7397:36:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1485, + "id": 2972, "nodeType": "IfStatement", - "src": "7338:188:2", + "src": "7393:196:6", "trueBody": { - "id": 1484, + "id": 2971, "nodeType": "Block", - "src": "7377:149:2", + "src": "7435:154:6", "statements": [ { "expression": { @@ -6939,12 +6939,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1475, + "id": 2962, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1428, - "src": "7452:12:2", + "referencedDeclaration": 2915, + "src": "7510:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6958,18 +6958,18 @@ "typeString": "bytes32" } ], - "id": 1474, + "id": 2961, "name": "resetListing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2105, - "src": "7439:12:2", + "referencedDeclaration": 3592, + "src": "7497:12:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1476, + "id": 2963, "isConstant": false, "isLValue": false, "isPure": false, @@ -6977,28 +6977,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7439:26:2", + "src": "7497:26:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1477, + "id": 2964, "nodeType": "ExpressionStatement", - "src": "7439:26:2" + "src": "7497:26:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1479, + "id": 2966, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1428, - "src": "7490:12:2", + "referencedDeclaration": 2915, + "src": "7553:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7012,18 +7012,18 @@ "typeString": "bytes32" } ], - "id": 1478, + "id": 2965, "name": "_TouchAndRemoved", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1075, - "src": "7473:16:2", + "referencedDeclaration": 2562, + "src": "7536:16:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1480, + "id": 2967, "isConstant": false, "isLValue": false, "isPure": false, @@ -7031,28 +7031,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7473:30:2", + "src": "7536:30:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1481, - "nodeType": "ExpressionStatement", - "src": "7473:30:2" + "id": 2968, + "nodeType": "EmitStatement", + "src": "7531:35:6" }, { "expression": { "argumentTypes": null, "hexValue": "30", - "id": 1482, + "id": 2969, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7518:1:2", + "src": "7581:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -7060,26 +7060,26 @@ }, "value": "0" }, - "functionReturnParameters": 1434, - "id": 1483, + "functionReturnParameters": 2921, + "id": 2970, "nodeType": "Return", - "src": "7511:8:2" + "src": "7574:8:6" } ] } }, { "assignments": [ - 1487 + 2974 ], "declarations": [ { "constant": false, - "id": 1487, + "id": 2974, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "7551:11:2", + "scope": 3065, + "src": "7614:11:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7087,10 +7087,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1486, + "id": 2973, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7551:4:2", + "src": "7614:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7100,7 +7100,7 @@ "visibility": "internal" } ], - "id": 1503, + "id": 2990, "initialValue": { "argumentTypes": null, "arguments": [ @@ -7110,14 +7110,14 @@ { "argumentTypes": null, "hexValue": "766f746551756f72756d", - "id": 1492, + "id": 2979, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7609:12:2", + "src": "7670:12:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_9b01c2212638b995654bf3d584befbb3576184e03cd1a9ae5693a18a1f559878", @@ -7135,32 +7135,32 @@ ], "expression": { "argumentTypes": null, - "id": 1490, + "id": 2977, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "7591:13:2", + "referencedDeclaration": 2633, + "src": "7652:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1491, + "id": 2978, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "7591:17:2", + "referencedDeclaration": 2349, + "src": "7652:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1493, + "id": 2980, "isConstant": false, "isLValue": false, "isPure": false, @@ -7168,7 +7168,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7591:31:2", + "src": "7652:31:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7180,14 +7180,14 @@ { "argumentTypes": null, "hexValue": "636f6d6d697453746167654c656e", - "id": 1496, + "id": 2983, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7650:16:2", + "src": "7709:16:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_22aa10f6207ed6245b2e23bddfcdfa1a542b375f7cf45082a1a75b9304a6150d", @@ -7205,32 +7205,32 @@ ], "expression": { "argumentTypes": null, - "id": 1494, + "id": 2981, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "7632:13:2", + "referencedDeclaration": 2633, + "src": "7691:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1495, + "id": 2982, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "7632:17:2", + "referencedDeclaration": 2349, + "src": "7691:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1497, + "id": 2984, "isConstant": false, "isLValue": false, "isPure": false, @@ -7238,7 +7238,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7632:35:2", + "src": "7691:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7250,14 +7250,14 @@ { "argumentTypes": null, "hexValue": "72657665616c53746167654c656e", - "id": 1500, + "id": 2987, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7695:16:2", + "src": "7752:16:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_e8858300ed02b4242350c6412c69b3951ae8f1d10eb49beafb9ecebaba7a0af1", @@ -7275,32 +7275,32 @@ ], "expression": { "argumentTypes": null, - "id": 1498, + "id": 2985, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "7677:13:2", + "referencedDeclaration": 2633, + "src": "7734:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1499, + "id": 2986, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "7677:17:2", + "referencedDeclaration": 2349, + "src": "7734:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1501, + "id": 2988, "isConstant": false, "isLValue": false, "isPure": false, @@ -7308,7 +7308,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7677:35:2", + "src": "7734:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7332,32 +7332,32 @@ ], "expression": { "argumentTypes": null, - "id": 1488, + "id": 2975, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "7565:6:2", + "referencedDeclaration": 2631, + "src": "7628:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1489, + "id": 2976, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "startPoll", "nodeType": "MemberAccess", - "referencedDeclaration": 3121, - "src": "7565:16:2", + "referencedDeclaration": 1101, + "src": "7628:16:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) external returns (uint256)" } }, - "id": 1502, + "id": 2989, "isConstant": false, "isLValue": false, "isPure": false, @@ -7365,19 +7365,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7565:153:2", + "src": "7628:147:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "7551:167:2" + "src": "7614:161:6" }, { "expression": { "argumentTypes": null, - "id": 1526, + "id": 3013, "isConstant": false, "isLValue": false, "isPure": false, @@ -7386,26 +7386,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1504, + "id": 2991, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "7725:10:2", + "referencedDeclaration": 2623, + "src": "7782:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1506, + "id": 2993, "indexExpression": { "argumentTypes": null, - "id": 1505, + "id": 2992, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1487, - "src": "7736:6:2", + "referencedDeclaration": 2974, + "src": "7793:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7416,9 +7416,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "7725:18:2", + "src": "7782:18:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, @@ -7431,18 +7431,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1508, + "id": 2995, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "7776:3:2", + "referencedDeclaration": 3702, + "src": "7833:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1509, + "id": 2996, "isConstant": false, "isLValue": false, "isPure": false, @@ -7450,7 +7450,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7776:10:2", + "src": "7833:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7462,7 +7462,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1521, + "id": 3008, "isConstant": false, "isLValue": false, "isPure": false, @@ -7476,7 +7476,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1518, + "id": 3005, "isConstant": false, "isLValue": false, "isPure": false, @@ -7490,7 +7490,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1515, + "id": 3002, "isConstant": false, "isLValue": false, "isPure": false, @@ -7498,14 +7498,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "313030", - "id": 1510, + "id": 2997, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7808:3:2", + "src": "7865:3:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -7521,14 +7521,14 @@ { "argumentTypes": null, "hexValue": "64697370656e736174696f6e506374", - "id": 1513, + "id": 3000, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7832:17:2", + "src": "7889:17:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_a44475ce52a893bc7cadba79a6351960ca7e12219e3b7f3a04da4d29c39864e4", @@ -7546,32 +7546,32 @@ ], "expression": { "argumentTypes": null, - "id": 1511, + "id": 2998, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "7814:13:2", + "referencedDeclaration": 2633, + "src": "7871:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1512, + "id": 2999, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "7814:17:2", + "referencedDeclaration": 2349, + "src": "7871:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1514, + "id": 3001, "isConstant": false, "isLValue": false, "isPure": false, @@ -7579,27 +7579,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7814:36:2", + "src": "7871:36:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7808:42:2", + "src": "7865:42:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1516, + "id": 3003, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "7807:44:2", + "src": "7864:44:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7609,32 +7609,32 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 1517, - "name": "deposit", + "id": 3004, + "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "7854:7:2", + "referencedDeclaration": 2929, + "src": "7911:10:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7807:54:2", + "src": "7864:57:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1519, + "id": 3006, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "7806:56:2", + "src": "7863:59:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7645,14 +7645,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "313030", - "id": 1520, + "id": 3007, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7865:3:2", + "src": "7925:3:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -7660,7 +7660,7 @@ }, "value": "100" }, - "src": "7806:62:2", + "src": "7863:65:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7668,12 +7668,12 @@ }, { "argumentTypes": null, - "id": 1522, - "name": "deposit", + "id": 3009, + "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "7883:7:2", + "referencedDeclaration": 2929, + "src": "7943:10:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7682,14 +7682,14 @@ { "argumentTypes": null, "hexValue": "66616c7365", - "id": 1523, + "id": 3010, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "7908:5:2", + "src": "7971:5:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -7700,14 +7700,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 1524, + "id": 3011, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7934:1:2", + "src": "7997:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -7718,18 +7718,18 @@ ], "expression": { "argumentTypes": null, - "id": 1507, + "id": 2994, "name": "Challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1132, - "src": "7746:9:2", + "referencedDeclaration": 2619, + "src": "7803:9:6", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Challenge_$1132_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Challenge_$2619_storage_ptr_$", "typeString": "type(struct Registry.Challenge storage pointer)" } }, - "id": 1525, + "id": 3012, "isConstant": false, "isLValue": false, "isPure": false, @@ -7743,26 +7743,26 @@ "totalTokens" ], "nodeType": "FunctionCall", - "src": "7746:196:2", + "src": "7803:202:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_memory", + "typeIdentifier": "t_struct$_Challenge_$2619_memory", "typeString": "struct Registry.Challenge memory" } }, - "src": "7725:217:2", + "src": "7782:223:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1527, + "id": 3014, "nodeType": "ExpressionStatement", - "src": "7725:217:2" + "src": "7782:223:6" }, { "expression": { "argumentTypes": null, - "id": 1532, + "id": 3019, "isConstant": false, "isLValue": false, "isPure": false, @@ -7771,26 +7771,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1528, + "id": 3015, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1436, - "src": "8007:7:2", + "referencedDeclaration": 2923, + "src": "8070:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1530, + "id": 3017, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "8007:19:2", + "referencedDeclaration": 2603, + "src": "8070:19:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7800,31 +7800,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1531, + "id": 3018, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1487, - "src": "8029:6:2", + "referencedDeclaration": 2974, + "src": "8092:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8007:28:2", + "src": "8070:28:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1533, + "id": 3020, "nodeType": "ExpressionStatement", - "src": "8007:28:2" + "src": "8070:28:6" }, { "expression": { "argumentTypes": null, - "id": 1538, + "id": 3025, "isConstant": false, "isLValue": false, "isPure": false, @@ -7833,26 +7833,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1534, + "id": 3021, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1436, - "src": "8095:7:2", + "referencedDeclaration": 2923, + "src": "8158:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1536, + "id": 3023, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "8095:23:2", + "referencedDeclaration": 2601, + "src": "8158:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7862,26 +7862,26 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 1537, - "name": "deposit", + "id": 3024, + "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "8122:7:2", + "referencedDeclaration": 2929, + "src": "8185:10:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8095:34:2", + "src": "8158:37:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1539, + "id": 3026, "nodeType": "ExpressionStatement", - "src": "8095:34:2" + "src": "8158:37:6" }, { "expression": { @@ -7894,18 +7894,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1543, + "id": 3030, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "8199:3:2", + "referencedDeclaration": 3702, + "src": "8265:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1544, + "id": 3031, "isConstant": false, "isLValue": false, "isPure": false, @@ -7913,7 +7913,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "8199:10:2", + "src": "8265:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7921,25 +7921,25 @@ }, { "argumentTypes": null, - "id": 1545, + "id": 3032, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3921, - "src": "8211:4:2", + "referencedDeclaration": 3729, + "src": "8277:4:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$2106", + "typeIdentifier": "t_contract$_Registry_$3593", "typeString": "contract Registry" } }, { "argumentTypes": null, - "id": 1546, - "name": "deposit", + "id": 3033, + "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "8217:7:2", + "referencedDeclaration": 2929, + "src": "8283:10:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7953,7 +7953,7 @@ "typeString": "address" }, { - "typeIdentifier": "t_contract$_Registry_$2106", + "typeIdentifier": "t_contract$_Registry_$3593", "typeString": "contract Registry" }, { @@ -7963,32 +7963,32 @@ ], "expression": { "argumentTypes": null, - "id": 1541, + "id": 3028, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "8180:5:2", + "referencedDeclaration": 2629, + "src": "8246:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 1542, + "id": 3029, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 3747, - "src": "8180:18:2", + "referencedDeclaration": 390, + "src": "8246:18:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 1547, + "id": 3034, "isConstant": false, "isLValue": false, "isPure": false, @@ -7996,7 +7996,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8180:45:2", + "src": "8246:48:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8010,21 +8010,21 @@ "typeString": "bool" } ], - "id": 1540, + "id": 3027, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "8172:7:2", + "referencedDeclaration": 3705, + "src": "8238:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1548, + "id": 3035, "isConstant": false, "isLValue": false, "isPure": false, @@ -8032,26 +8032,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8172:54:2", + "src": "8238:57:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1549, + "id": 3036, "nodeType": "ExpressionStatement", - "src": "8172:54:2" + "src": "8238:57:6" }, { "assignments": [], "declarations": [ { "constant": false, - "id": 1551, + "id": 3038, "name": "commitEndDate", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "8233:18:2", + "scope": 3065, + "src": "8302:18:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8059,10 +8059,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1550, + "id": 3037, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8233:4:2", + "src": "8302:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8072,21 +8072,21 @@ "visibility": "internal" } ], - "id": 1552, + "id": 3039, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "8233:18:2" + "src": "8302:18:6" }, { "assignments": [], "declarations": [ { "constant": false, - "id": 1554, + "id": 3041, "name": "revealEndDate", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "8257:18:2", + "scope": 3065, + "src": "8326:18:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8094,10 +8094,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1553, + "id": 3040, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8257:4:2", + "src": "8326:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8107,15 +8107,15 @@ "visibility": "internal" } ], - "id": 1555, + "id": 3042, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "8257:18:2" + "src": "8326:18:6" }, { "expression": { "argumentTypes": null, - "id": 1563, + "id": 3050, "isConstant": false, "isLValue": false, "isPure": false, @@ -8125,12 +8125,12 @@ "components": [ { "argumentTypes": null, - "id": 1556, + "id": 3043, "name": "commitEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1551, - "src": "8282:13:2", + "referencedDeclaration": 3038, + "src": "8351:13:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8138,12 +8138,12 @@ }, { "argumentTypes": null, - "id": 1557, + "id": 3044, "name": "revealEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1554, - "src": "8297:13:2", + "referencedDeclaration": 3041, + "src": "8366:13:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8151,14 +8151,14 @@ }, null ], - "id": 1558, + "id": 3045, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", - "src": "8281:31:2", + "src": "8350:31:6", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$__$", "typeString": "tuple(uint256,uint256,)" @@ -8171,12 +8171,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1561, + "id": 3048, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1487, - "src": "8330:6:2", + "referencedDeclaration": 2974, + "src": "8399:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8192,32 +8192,32 @@ ], "expression": { "argumentTypes": null, - "id": 1559, + "id": 3046, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "8315:6:2", + "referencedDeclaration": 2631, + "src": "8384:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1560, + "id": 3047, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "pollMap", "nodeType": "MemberAccess", - "referencedDeclaration": 2561, - "src": "8315:14:2", + "referencedDeclaration": 535, + "src": "8384:14:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "function (uint256) view external returns (uint256,uint256,uint256,uint256,uint256)" } }, - "id": 1562, + "id": 3049, "isConstant": false, "isLValue": false, "isPure": false, @@ -8225,34 +8225,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8315:22:2", + "src": "8384:22:6", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(uint256,uint256,uint256,uint256,uint256)" } }, - "src": "8281:56:2", + "src": "8350:56:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1564, + "id": 3051, "nodeType": "ExpressionStatement", - "src": "8281:56:2" + "src": "8350:56:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1566, + "id": 3053, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1428, - "src": "8359:12:2", + "referencedDeclaration": 2915, + "src": "8436:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8260,12 +8260,12 @@ }, { "argumentTypes": null, - "id": 1567, + "id": 3054, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1487, - "src": "8373:6:2", + "referencedDeclaration": 2974, + "src": "8456:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8273,12 +8273,12 @@ }, { "argumentTypes": null, - "id": 1568, + "id": 3055, "name": "_data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1430, - "src": "8381:5:2", + "referencedDeclaration": 2917, + "src": "8470:5:6", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" @@ -8286,12 +8286,12 @@ }, { "argumentTypes": null, - "id": 1569, + "id": 3056, "name": "commitEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1551, - "src": "8388:13:2", + "referencedDeclaration": 3038, + "src": "8483:13:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8299,12 +8299,12 @@ }, { "argumentTypes": null, - "id": 1570, + "id": 3057, "name": "revealEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1554, - "src": "8403:13:2", + "referencedDeclaration": 3041, + "src": "8504:13:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8314,18 +8314,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1571, + "id": 3058, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "8418:3:2", + "referencedDeclaration": 3702, + "src": "8525:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1572, + "id": 3059, "isConstant": false, "isLValue": false, "isPure": false, @@ -8333,7 +8333,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "8418:10:2", + "src": "8525:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8367,18 +8367,18 @@ "typeString": "address" } ], - "id": 1565, + "id": 3052, "name": "_Challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1035, - "src": "8348:10:2", + "referencedDeclaration": 2522, + "src": "8418:10:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (bytes32,uint256,string memory,uint256,uint256,address)" } }, - "id": 1573, + "id": 3060, "isConstant": false, "isLValue": false, "isPure": false, @@ -8386,39 +8386,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8348:81:2", + "src": "8418:123:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1574, - "nodeType": "ExpressionStatement", - "src": "8348:81:2" + "id": 3061, + "nodeType": "EmitStatement", + "src": "8413:128:6" }, { "expression": { "argumentTypes": null, - "id": 1575, + "id": 3062, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1487, - "src": "8442:6:2", + "referencedDeclaration": 2974, + "src": "8555:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1434, - "id": 1576, + "functionReturnParameters": 2921, + "id": 3063, "nodeType": "Return", - "src": "8435:13:2" + "src": "8548:13:6" } ] }, "documentation": "@dev Starts a poll for a listingHash which is either in the apply stage or\nalready in the whitelist. Tokens are taken from the challenger and the\napplicant's deposits are locked.\n@param _listingHash The listingHash being challenged, whether listed or in application\n@param _data Extra data relevant to the challenge. Think IPFS hashes.", - "id": 1578, + "id": 3065, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -8426,16 +8426,16 @@ "name": "challenge", "nodeType": "FunctionDefinition", "parameters": { - "id": 1431, + "id": 2918, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1428, + "id": 2915, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "6906:20:2", + "scope": 3065, + "src": "6958:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8443,10 +8443,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1427, + "id": 2914, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "6906:7:2", + "src": "6958:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8457,11 +8457,11 @@ }, { "constant": false, - "id": 1430, + "id": 2917, "name": "_data", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "6928:12:2", + "scope": 3065, + "src": "6980:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8469,10 +8469,10 @@ "typeString": "string" }, "typeName": { - "id": 1429, + "id": 2916, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6928:6:2", + "src": "6980:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -8482,20 +8482,20 @@ "visibility": "internal" } ], - "src": "6905:36:2" + "src": "6957:36:6" }, "payable": false, "returnParameters": { - "id": 1434, + "id": 2921, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1433, + "id": 2920, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "6960:16:2", + "scope": 3065, + "src": "7012:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8503,10 +8503,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1432, + "id": 2919, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6960:4:2", + "src": "7012:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8516,19 +8516,19 @@ "visibility": "internal" } ], - "src": "6959:18:2" + "src": "7011:18:6" }, - "scope": 2106, - "src": "6887:1566:2", + "scope": 3593, + "src": "6939:1627:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1605, + "id": 3092, "nodeType": "Block", - "src": "8733:217:2", + "src": "8846:217:6", "statements": [ { "condition": { @@ -8536,12 +8536,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1584, + "id": 3071, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1580, - "src": "8760:12:2", + "referencedDeclaration": 3067, + "src": "8873:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8555,18 +8555,18 @@ "typeString": "bytes32" } ], - "id": 1583, + "id": 3070, "name": "canBeWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1784, - "src": "8743:16:2", + "referencedDeclaration": 3271, + "src": "8856:16:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1585, + "id": 3072, "isConstant": false, "isLValue": false, "isPure": false, @@ -8574,7 +8574,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8743:30:2", + "src": "8856:30:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8586,12 +8586,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1592, + "id": 3079, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1580, - "src": "8857:12:2", + "referencedDeclaration": 3067, + "src": "8970:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8605,18 +8605,18 @@ "typeString": "bytes32" } ], - "id": 1591, + "id": 3078, "name": "challengeCanBeResolved", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1867, - "src": "8834:22:2", + "referencedDeclaration": 3354, + "src": "8947:22:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1593, + "id": 3080, "isConstant": false, "isLValue": false, "isPure": false, @@ -8624,16 +8624,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8834:36:2", + "src": "8947:36:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 1602, + "id": 3089, "nodeType": "Block", - "src": "8923:23:2", + "src": "9036:23:6", "statements": [ { "expression": { @@ -8641,21 +8641,21 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1599, + "id": 3086, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 3897, - 3898 + 3707, + 3708 ], - "referencedDeclaration": 3897, - "src": "8931:6:2", + "referencedDeclaration": 3707, + "src": "9044:6:6", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1600, + "id": 3087, "isConstant": false, "isLValue": false, "isPure": false, @@ -8663,25 +8663,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8931:8:2", + "src": "9044:8:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1601, + "id": 3088, "nodeType": "ExpressionStatement", - "src": "8931:8:2" + "src": "9044:8:6" } ] }, - "id": 1603, + "id": 3090, "nodeType": "IfStatement", - "src": "8830:116:2", + "src": "8943:116:6", "trueBody": { - "id": 1598, + "id": 3085, "nodeType": "Block", - "src": "8872:45:2", + "src": "8985:45:6", "statements": [ { "expression": { @@ -8689,12 +8689,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1595, + "id": 3082, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1580, - "src": "8897:12:2", + "referencedDeclaration": 3067, + "src": "9010:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8708,18 +8708,18 @@ "typeString": "bytes32" } ], - "id": 1594, + "id": 3081, "name": "resolveChallenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2028, - "src": "8880:16:2", + "referencedDeclaration": 3515, + "src": "8993:16:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1596, + "id": 3083, "isConstant": false, "isLValue": false, "isPure": false, @@ -8727,26 +8727,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8880:30:2", + "src": "8993:30:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1597, + "id": 3084, "nodeType": "ExpressionStatement", - "src": "8880:30:2" + "src": "8993:30:6" } ] } }, - "id": 1604, + "id": 3091, "nodeType": "IfStatement", - "src": "8739:207:2", + "src": "8852:207:6", "trueBody": { - "id": 1590, + "id": 3077, "nodeType": "Block", - "src": "8775:49:2", + "src": "8888:49:6", "statements": [ { "expression": { @@ -8754,12 +8754,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1587, + "id": 3074, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1580, - "src": "8804:12:2", + "referencedDeclaration": 3067, + "src": "8917:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8773,18 +8773,18 @@ "typeString": "bytes32" } ], - "id": 1586, + "id": 3073, "name": "whitelistApplication", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2052, - "src": "8783:20:2", + "referencedDeclaration": 3539, + "src": "8896:20:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1588, + "id": 3075, "isConstant": false, "isLValue": false, "isPure": false, @@ -8792,15 +8792,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8783:34:2", + "src": "8896:34:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1589, + "id": 3076, "nodeType": "ExpressionStatement", - "src": "8783:34:2" + "src": "8896:34:6" } ] } @@ -8808,7 +8808,7 @@ ] }, "documentation": "@dev Updates a listingHash's status from 'application' to 'listing' or resolves\na challenge if one exists.\n@param _listingHash The listingHash whose status is being updated", - "id": 1606, + "id": 3093, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -8816,16 +8816,16 @@ "name": "updateStatus", "nodeType": "FunctionDefinition", "parameters": { - "id": 1581, + "id": 3068, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1580, + "id": 3067, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1606, - "src": "8704:20:2", + "scope": 3093, + "src": "8817:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8833,10 +8833,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1579, + "id": 3066, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "8704:7:2", + "src": "8817:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -8846,26 +8846,26 @@ "visibility": "internal" } ], - "src": "8703:22:2" + "src": "8816:22:6" }, "payable": false, "returnParameters": { - "id": 1582, + "id": 3069, "nodeType": "ParameterList", "parameters": [], - "src": "8733:0:2" + "src": "8846:0:6" }, - "scope": 2106, - "src": "8682:268:2", + "scope": 3593, + "src": "8795:268:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1693, + "id": 3180, "nodeType": "Block", - "src": "9419:848:2", + "src": "9532:853:6", "statements": [ { "expression": { @@ -8877,7 +8877,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1622, + "id": 3109, "isConstant": false, "isLValue": false, "isPure": false, @@ -8890,26 +8890,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1614, + "id": 3101, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "9531:10:2", + "referencedDeclaration": 2623, + "src": "9644:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1616, + "id": 3103, "indexExpression": { "argumentTypes": null, - "id": 1615, + "id": 3102, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "9542:12:2", + "referencedDeclaration": 3095, + "src": "9655:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8920,43 +8920,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9531:24:2", + "src": "9644:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1617, + "id": 3104, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokenClaims", "nodeType": "MemberAccess", - "referencedDeclaration": 1131, - "src": "9531:36:2", + "referencedDeclaration": 2618, + "src": "9644:36:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 1620, + "id": 3107, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1618, + "id": 3105, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9568:3:2", + "referencedDeclaration": 3702, + "src": "9681:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1619, + "id": 3106, "isConstant": false, "isLValue": false, "isPure": false, @@ -8964,7 +8964,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9568:10:2", + "src": "9681:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8975,7 +8975,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9531:48:2", + "src": "9644:48:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8986,14 +8986,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 1621, + "id": 3108, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9583:5:2", + "src": "9696:5:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -9001,7 +9001,7 @@ }, "value": "false" }, - "src": "9531:57:2", + "src": "9644:57:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9015,21 +9015,21 @@ "typeString": "bool" } ], - "id": 1613, + "id": 3100, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "9523:7:2", + "referencedDeclaration": 3705, + "src": "9636:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1623, + "id": 3110, "isConstant": false, "isLValue": false, "isPure": false, @@ -9037,15 +9037,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9523:66:2", + "src": "9636:66:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1624, + "id": 3111, "nodeType": "ExpressionStatement", - "src": "9523:66:2" + "src": "9636:66:6" }, { "expression": { @@ -9057,7 +9057,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1631, + "id": 3118, "isConstant": false, "isLValue": false, "isPure": false, @@ -9068,26 +9068,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1626, + "id": 3113, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "9603:10:2", + "referencedDeclaration": 2623, + "src": "9716:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1628, + "id": 3115, "indexExpression": { "argumentTypes": null, - "id": 1627, + "id": 3114, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "9614:12:2", + "referencedDeclaration": 3095, + "src": "9727:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9098,21 +9098,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9603:24:2", + "src": "9716:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1629, + "id": 3116, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 1123, - "src": "9603:33:2", + "referencedDeclaration": 2610, + "src": "9716:33:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9123,14 +9123,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "74727565", - "id": 1630, + "id": 3117, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9640:4:2", + "src": "9753:4:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -9138,7 +9138,7 @@ }, "value": "true" }, - "src": "9603:41:2", + "src": "9716:41:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9152,21 +9152,21 @@ "typeString": "bool" } ], - "id": 1625, + "id": 3112, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "9595:7:2", + "referencedDeclaration": 3705, + "src": "9708:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1632, + "id": 3119, "isConstant": false, "isLValue": false, "isPure": false, @@ -9174,28 +9174,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9595:50:2", + "src": "9708:50:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1633, + "id": 3120, "nodeType": "ExpressionStatement", - "src": "9595:50:2" + "src": "9708:50:6" }, { "assignments": [ - 1635 + 3122 ], "declarations": [ { "constant": false, - "id": 1635, + "id": 3122, "name": "voterTokens", "nodeType": "VariableDeclaration", - "scope": 1694, - "src": "9652:16:2", + "scope": 3181, + "src": "9765:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9203,10 +9203,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1634, + "id": 3121, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9652:4:2", + "src": "9765:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9216,7 +9216,7 @@ "visibility": "internal" } ], - "id": 1643, + "id": 3130, "initialValue": { "argumentTypes": null, "arguments": [ @@ -9224,18 +9224,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1638, + "id": 3125, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9698:3:2", + "referencedDeclaration": 3702, + "src": "9811:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1639, + "id": 3126, "isConstant": false, "isLValue": false, "isPure": false, @@ -9243,7 +9243,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9698:10:2", + "src": "9811:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9251,12 +9251,12 @@ }, { "argumentTypes": null, - "id": 1640, + "id": 3127, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "9710:12:2", + "referencedDeclaration": 3095, + "src": "9823:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9264,12 +9264,12 @@ }, { "argumentTypes": null, - "id": 1641, + "id": 3128, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1610, - "src": "9724:5:2", + "referencedDeclaration": 3097, + "src": "9837:5:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9293,32 +9293,32 @@ ], "expression": { "argumentTypes": null, - "id": 1636, + "id": 3123, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "9671:6:2", + "referencedDeclaration": 2631, + "src": "9784:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1637, + "id": 3124, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getNumPassingTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 3065, - "src": "9671:26:2", + "referencedDeclaration": 1045, + "src": "9784:26:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256,uint256) view external returns (uint256)" } }, - "id": 1642, + "id": 3129, "isConstant": false, "isLValue": false, "isPure": false, @@ -9326,27 +9326,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9671:59:2", + "src": "9784:59:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9652:78:2" + "src": "9765:78:6" }, { "assignments": [ - 1645 + 3132 ], "declarations": [ { "constant": false, - "id": 1645, + "id": 3132, "name": "reward", "nodeType": "VariableDeclaration", - "scope": 1694, - "src": "9736:11:2", + "scope": 3181, + "src": "9849:11:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9354,10 +9354,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1644, + "id": 3131, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9736:4:2", + "src": "9849:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9367,7 +9367,7 @@ "visibility": "internal" } ], - "id": 1652, + "id": 3139, "initialValue": { "argumentTypes": null, "arguments": [ @@ -9375,18 +9375,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1647, + "id": 3134, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9762:3:2", + "referencedDeclaration": 3702, + "src": "9875:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1648, + "id": 3135, "isConstant": false, "isLValue": false, "isPure": false, @@ -9394,7 +9394,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9762:10:2", + "src": "9875:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9402,12 +9402,12 @@ }, { "argumentTypes": null, - "id": 1649, + "id": 3136, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "9774:12:2", + "referencedDeclaration": 3095, + "src": "9887:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9415,12 +9415,12 @@ }, { "argumentTypes": null, - "id": 1650, + "id": 3137, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1610, - "src": "9788:5:2", + "referencedDeclaration": 3097, + "src": "9901:5:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9442,18 +9442,18 @@ "typeString": "uint256" } ], - "id": 1646, + "id": 3133, "name": "voterReward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1736, - "src": "9750:11:2", + "referencedDeclaration": 3223, + "src": "9863:11:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256,uint256) view returns (uint256)" } }, - "id": 1651, + "id": 3138, "isConstant": false, "isLValue": false, "isPure": false, @@ -9461,19 +9461,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9750:44:2", + "src": "9863:44:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9736:58:2" + "src": "9849:58:6" }, { "expression": { "argumentTypes": null, - "id": 1658, + "id": 3145, "isConstant": false, "isLValue": false, "isPure": false, @@ -9484,26 +9484,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1653, + "id": 3140, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "9944:10:2", + "referencedDeclaration": 2623, + "src": "10057:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1655, + "id": 3142, "indexExpression": { "argumentTypes": null, - "id": 1654, + "id": 3141, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "9955:12:2", + "referencedDeclaration": 3095, + "src": "10068:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9514,21 +9514,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9944:24:2", + "src": "10057:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1656, + "id": 3143, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "totalTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 1127, - "src": "9944:36:2", + "referencedDeclaration": 2614, + "src": "10057:36:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9538,31 +9538,31 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 1657, + "id": 3144, "name": "voterTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1635, - "src": "9984:11:2", + "referencedDeclaration": 3122, + "src": "10097:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9944:51:2", + "src": "10057:51:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1659, + "id": 3146, "nodeType": "ExpressionStatement", - "src": "9944:51:2" + "src": "10057:51:6" }, { "expression": { "argumentTypes": null, - "id": 1665, + "id": 3152, "isConstant": false, "isLValue": false, "isPure": false, @@ -9573,26 +9573,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1660, + "id": 3147, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "10001:10:2", + "referencedDeclaration": 2623, + "src": "10114:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1662, + "id": 3149, "indexExpression": { "argumentTypes": null, - "id": 1661, + "id": 3148, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "10012:12:2", + "referencedDeclaration": 3095, + "src": "10125:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9603,21 +9603,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10001:24:2", + "src": "10114:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1663, + "id": 3150, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 1119, - "src": "10001:35:2", + "referencedDeclaration": 2606, + "src": "10114:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9627,31 +9627,31 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 1664, + "id": 3151, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1645, - "src": "10040:6:2", + "referencedDeclaration": 3132, + "src": "10153:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10001:45:2", + "src": "10114:45:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1666, + "id": 3153, "nodeType": "ExpressionStatement", - "src": "10001:45:2" + "src": "10114:45:6" }, { "expression": { "argumentTypes": null, - "id": 1675, + "id": 3162, "isConstant": false, "isLValue": false, "isPure": false, @@ -9664,26 +9664,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1667, + "id": 3154, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "10102:10:2", + "referencedDeclaration": 2623, + "src": "10215:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1669, + "id": 3156, "indexExpression": { "argumentTypes": null, - "id": 1668, + "id": 3155, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "10113:12:2", + "referencedDeclaration": 3095, + "src": "10226:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9694,43 +9694,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10102:24:2", + "src": "10215:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1670, + "id": 3157, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokenClaims", "nodeType": "MemberAccess", - "referencedDeclaration": 1131, - "src": "10102:36:2", + "referencedDeclaration": 2618, + "src": "10215:36:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 1673, + "id": 3160, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1671, + "id": 3158, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "10139:3:2", + "referencedDeclaration": 3702, + "src": "10252:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1672, + "id": 3159, "isConstant": false, "isLValue": false, "isPure": false, @@ -9738,7 +9738,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10139:10:2", + "src": "10252:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9749,7 +9749,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "10102:48:2", + "src": "10215:48:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9760,14 +9760,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 1674, + "id": 3161, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "10153:4:2", + "src": "10266:4:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -9775,15 +9775,15 @@ }, "value": "true" }, - "src": "10102:55:2", + "src": "10215:55:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1676, + "id": 3163, "nodeType": "ExpressionStatement", - "src": "10102:55:2" + "src": "10215:55:6" }, { "expression": { @@ -9796,18 +9796,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1680, + "id": 3167, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "10187:3:2", + "referencedDeclaration": 3702, + "src": "10300:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1681, + "id": 3168, "isConstant": false, "isLValue": false, "isPure": false, @@ -9815,7 +9815,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10187:10:2", + "src": "10300:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9823,12 +9823,12 @@ }, { "argumentTypes": null, - "id": 1682, + "id": 3169, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1645, - "src": "10199:6:2", + "referencedDeclaration": 3132, + "src": "10312:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9848,32 +9848,32 @@ ], "expression": { "argumentTypes": null, - "id": 1678, + "id": 3165, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "10172:5:2", + "referencedDeclaration": 2629, + "src": "10285:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 1679, + "id": 3166, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "10172:14:2", + "referencedDeclaration": 431, + "src": "10285:14:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 1683, + "id": 3170, "isConstant": false, "isLValue": false, "isPure": false, @@ -9881,7 +9881,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10172:34:2", + "src": "10285:34:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9895,21 +9895,21 @@ "typeString": "bool" } ], - "id": 1677, + "id": 3164, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "10164:7:2", + "referencedDeclaration": 3705, + "src": "10277:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1684, + "id": 3171, "isConstant": false, "isLValue": false, "isPure": false, @@ -9917,28 +9917,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10164:43:2", + "src": "10277:43:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1685, + "id": 3172, "nodeType": "ExpressionStatement", - "src": "10164:43:2" + "src": "10277:43:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1687, + "id": 3174, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "10229:12:2", + "referencedDeclaration": 3095, + "src": "10347:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9946,12 +9946,12 @@ }, { "argumentTypes": null, - "id": 1688, + "id": 3175, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1645, - "src": "10243:6:2", + "referencedDeclaration": 3132, + "src": "10361:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9961,18 +9961,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1689, + "id": 3176, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "10251:3:2", + "referencedDeclaration": 3702, + "src": "10369:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1690, + "id": 3177, "isConstant": false, "isLValue": false, "isPure": false, @@ -9980,7 +9980,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10251:10:2", + "src": "10369:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10002,18 +10002,18 @@ "typeString": "address" } ], - "id": 1686, + "id": 3173, "name": "_RewardClaimed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1103, - "src": "10214:14:2", + "referencedDeclaration": 2590, + "src": "10332:14:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,uint256,address)" } }, - "id": 1691, + "id": 3178, "isConstant": false, "isLValue": false, "isPure": false, @@ -10021,20 +10021,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10214:48:2", + "src": "10332:48:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1692, - "nodeType": "ExpressionStatement", - "src": "10214:48:2" + "id": 3179, + "nodeType": "EmitStatement", + "src": "10327:53:6" } ] }, "documentation": "@dev Called by a voter to claim their reward for each completed vote. Someone\nmust call updateStatus() before this can be called.\n@param _challengeID The PLCR pollID of the challenge a reward is being claimed for\n@param _salt The salt of a voter's commit hash in the given poll", - "id": 1694, + "id": 3181, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -10042,16 +10042,16 @@ "name": "claimReward", "nodeType": "FunctionDefinition", "parameters": { - "id": 1611, + "id": 3098, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1608, + "id": 3095, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 1694, - "src": "9381:17:2", + "scope": 3181, + "src": "9494:17:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10059,10 +10059,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1607, + "id": 3094, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9381:4:2", + "src": "9494:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10073,11 +10073,11 @@ }, { "constant": false, - "id": 1610, + "id": 3097, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 1694, - "src": "9400:10:2", + "scope": 3181, + "src": "9513:10:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10085,10 +10085,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1609, + "id": 3096, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9400:4:2", + "src": "9513:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10098,39 +10098,39 @@ "visibility": "internal" } ], - "src": "9380:31:2" + "src": "9493:31:6" }, "payable": false, "returnParameters": { - "id": 1612, + "id": 3099, "nodeType": "ParameterList", "parameters": [], - "src": "9419:0:2" + "src": "9532:0:6" }, - "scope": 2106, - "src": "9360:907:2", + "scope": 3593, + "src": "9473:912:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1735, + "id": 3222, "nodeType": "Block", - "src": "10822:258:2", + "src": "10940:258:6", "statements": [ { "assignments": [ - 1706 + 3193 ], "declarations": [ { "constant": false, - "id": 1706, + "id": 3193, "name": "totalTokens", "nodeType": "VariableDeclaration", - "scope": 1736, - "src": "10828:16:2", + "scope": 3223, + "src": "10946:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10138,10 +10138,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1705, + "id": 3192, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10828:4:2", + "src": "10946:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10151,33 +10151,33 @@ "visibility": "internal" } ], - "id": 1711, + "id": 3198, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1707, + "id": 3194, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "10847:10:2", + "referencedDeclaration": 2623, + "src": "10965:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1709, + "id": 3196, "indexExpression": { "argumentTypes": null, - "id": 1708, + "id": 3195, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "10858:12:2", + "referencedDeclaration": 3185, + "src": "10976:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10188,41 +10188,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10847:24:2", + "src": "10965:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1710, + "id": 3197, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "totalTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 1127, - "src": "10847:36:2", + "referencedDeclaration": 2614, + "src": "10965:36:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "10828:55:2" + "src": "10946:55:6" }, { "assignments": [ - 1713 + 3200 ], "declarations": [ { "constant": false, - "id": 1713, + "id": 3200, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 1736, - "src": "10889:15:2", + "scope": 3223, + "src": "11007:15:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10230,10 +10230,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1712, + "id": 3199, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10889:4:2", + "src": "11007:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10243,33 +10243,33 @@ "visibility": "internal" } ], - "id": 1718, + "id": 3205, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1714, + "id": 3201, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "10907:10:2", + "referencedDeclaration": 2623, + "src": "11025:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1716, + "id": 3203, "indexExpression": { "argumentTypes": null, - "id": 1715, + "id": 3202, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "10918:12:2", + "referencedDeclaration": 3185, + "src": "11036:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10280,41 +10280,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10907:24:2", + "src": "11025:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1717, + "id": 3204, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 1119, - "src": "10907:35:2", + "referencedDeclaration": 2606, + "src": "11025:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "10889:53:2" + "src": "11007:53:6" }, { "assignments": [ - 1720 + 3207 ], "declarations": [ { "constant": false, - "id": 1720, + "id": 3207, "name": "voterTokens", "nodeType": "VariableDeclaration", - "scope": 1736, - "src": "10948:16:2", + "scope": 3223, + "src": "11066:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10322,10 +10322,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1719, + "id": 3206, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10948:4:2", + "src": "11066:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10335,18 +10335,18 @@ "visibility": "internal" } ], - "id": 1727, + "id": 3214, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1723, + "id": 3210, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1696, - "src": "10994:6:2", + "referencedDeclaration": 3183, + "src": "11112:6:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10354,12 +10354,12 @@ }, { "argumentTypes": null, - "id": 1724, + "id": 3211, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "11002:12:2", + "referencedDeclaration": 3185, + "src": "11120:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10367,12 +10367,12 @@ }, { "argumentTypes": null, - "id": 1725, + "id": 3212, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1700, - "src": "11016:5:2", + "referencedDeclaration": 3187, + "src": "11134:5:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10396,32 +10396,32 @@ ], "expression": { "argumentTypes": null, - "id": 1721, + "id": 3208, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "10967:6:2", + "referencedDeclaration": 2631, + "src": "11085:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1722, + "id": 3209, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getNumPassingTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 3065, - "src": "10967:26:2", + "referencedDeclaration": 1045, + "src": "11085:26:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256,uint256) view external returns (uint256)" } }, - "id": 1726, + "id": 3213, "isConstant": false, "isLValue": false, "isPure": false, @@ -10429,14 +10429,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10967:55:2", + "src": "11085:55:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "10948:74:2" + "src": "11066:74:6" }, { "expression": { @@ -10445,7 +10445,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1733, + "id": 3220, "isConstant": false, "isLValue": false, "isPure": false, @@ -10459,19 +10459,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1730, + "id": 3217, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1728, + "id": 3215, "name": "voterTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1720, - "src": "11036:11:2", + "referencedDeclaration": 3207, + "src": "11154:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10481,32 +10481,32 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 1729, + "id": 3216, "name": "rewardPool", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1713, - "src": "11050:10:2", + "referencedDeclaration": 3200, + "src": "11168:10:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11036:24:2", + "src": "11154:24:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1731, + "id": 3218, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11035:26:2", + "src": "11153:26:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10516,32 +10516,32 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1732, + "id": 3219, "name": "totalTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1706, - "src": "11064:11:2", + "referencedDeclaration": 3193, + "src": "11182:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11035:40:2", + "src": "11153:40:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1704, - "id": 1734, + "functionReturnParameters": 3191, + "id": 3221, "nodeType": "Return", - "src": "11028:47:2" + "src": "11146:47:6" } ] }, "documentation": "@dev Calculates the provided voter's token reward for the given poll.\n@param _voter The address of the voter whose reward balance is to be returned\n@param _challengeID The pollID of the challenge a reward balance is being queried for\n@param _salt The salt of the voter's commit hash in the given poll\n@return The uint indicating the voter's reward", - "id": 1736, + "id": 3223, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -10549,16 +10549,16 @@ "name": "voterReward", "nodeType": "FunctionDefinition", "parameters": { - "id": 1701, + "id": 3188, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1696, + "id": 3183, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 1736, - "src": "10744:14:2", + "scope": 3223, + "src": "10862:14:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10566,10 +10566,10 @@ "typeString": "address" }, "typeName": { - "id": 1695, + "id": 3182, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10744:7:2", + "src": "10862:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10580,11 +10580,11 @@ }, { "constant": false, - "id": 1698, + "id": 3185, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 1736, - "src": "10760:17:2", + "scope": 3223, + "src": "10878:17:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10592,10 +10592,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1697, + "id": 3184, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10760:4:2", + "src": "10878:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10606,11 +10606,11 @@ }, { "constant": false, - "id": 1700, + "id": 3187, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 1736, - "src": "10779:10:2", + "scope": 3223, + "src": "10897:10:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10618,10 +10618,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1699, + "id": 3186, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10779:4:2", + "src": "10897:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10631,20 +10631,20 @@ "visibility": "internal" } ], - "src": "10743:47:2" + "src": "10861:47:6" }, "payable": false, "returnParameters": { - "id": 1704, + "id": 3191, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1703, + "id": 3190, "name": "", "nodeType": "VariableDeclaration", - "scope": 1736, - "src": "10814:4:2", + "scope": 3223, + "src": "10932:4:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10652,10 +10652,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1702, + "id": 3189, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10814:4:2", + "src": "10932:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10665,32 +10665,32 @@ "visibility": "internal" } ], - "src": "10813:6:2" + "src": "10931:6:6" }, - "scope": 2106, - "src": "10723:357:2", + "scope": 3593, + "src": "10841:357:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1783, + "id": 3270, "nodeType": "Block", - "src": "11318:631:2", + "src": "11436:629:6", "statements": [ { "assignments": [ - 1744 + 3231 ], "declarations": [ { "constant": false, - "id": 1744, + "id": 3231, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1784, - "src": "11324:16:2", + "scope": 3271, + "src": "11442:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10698,10 +10698,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1743, + "id": 3230, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "11324:4:2", + "src": "11442:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10711,33 +10711,33 @@ "visibility": "internal" } ], - "id": 1749, + "id": 3236, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1745, + "id": 3232, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "11343:8:2", + "referencedDeclaration": 2627, + "src": "11461:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1747, + "id": 3234, "indexExpression": { "argumentTypes": null, - "id": 1746, + "id": 3233, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1738, - "src": "11352:12:2", + "referencedDeclaration": 3225, + "src": "11470:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -10748,28 +10748,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11343:22:2", + "src": "11461:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1748, + "id": 3235, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "11343:34:2", + "referencedDeclaration": 2603, + "src": "11461:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11324:53:2" + "src": "11442:53:6" }, { "condition": { @@ -10778,7 +10778,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1776, + "id": 3263, "isConstant": false, "isLValue": false, "isPure": false, @@ -10789,7 +10789,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1764, + "id": 3251, "isConstant": false, "isLValue": false, "isPure": false, @@ -10800,7 +10800,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1759, + "id": 3246, "isConstant": false, "isLValue": false, "isPure": false, @@ -10810,12 +10810,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1751, + "id": 3238, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1738, - "src": "11650:12:2", + "referencedDeclaration": 3225, + "src": "11768:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -10829,18 +10829,18 @@ "typeString": "bytes32" } ], - "id": 1750, + "id": 3237, "name": "appWasMade", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1812, - "src": "11639:10:2", + "referencedDeclaration": 3299, + "src": "11757:10:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1752, + "id": 3239, "isConstant": false, "isLValue": false, "isPure": false, @@ -10848,7 +10848,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11639:24:2", + "src": "11757:24:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -10862,7 +10862,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1758, + "id": 3245, "isConstant": false, "isLValue": false, "isPure": false, @@ -10873,26 +10873,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1753, + "id": 3240, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "11710:8:2", + "referencedDeclaration": 2627, + "src": "11828:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1755, + "id": 3242, "indexExpression": { "argumentTypes": null, - "id": 1754, + "id": 3241, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1738, - "src": "11719:12:2", + "referencedDeclaration": 3225, + "src": "11837:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -10903,21 +10903,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11710:22:2", + "src": "11828:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1756, + "id": 3243, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "applicationExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 1108, - "src": "11710:40:2", + "referencedDeclaration": 2595, + "src": "11828:40:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10927,24 +10927,24 @@ "operator": "<", "rightExpression": { "argumentTypes": null, - "id": 1757, + "id": 3244, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "11753:3:2", + "referencedDeclaration": 3704, + "src": "11871:3:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11710:46:2", + "src": "11828:46:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "11639:117:2", + "src": "11757:117:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -10954,7 +10954,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 1763, + "id": 3250, "isConstant": false, "isLValue": false, "isPure": false, @@ -10962,18 +10962,18 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "11803:28:2", + "src": "11921:28:6", "subExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1761, + "id": 3248, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1738, - "src": "11818:12:2", + "referencedDeclaration": 3225, + "src": "11936:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -10987,18 +10987,18 @@ "typeString": "bytes32" } ], - "id": 1760, + "id": 3247, "name": "isWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1797, - "src": "11804:13:2", + "referencedDeclaration": 3284, + "src": "11922:13:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1762, + "id": 3249, "isConstant": false, "isLValue": false, "isPure": false, @@ -11006,7 +11006,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11804:27:2", + "src": "11922:27:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11017,7 +11017,7 @@ "typeString": "bool" } }, - "src": "11639:192:2", + "src": "11757:192:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11034,7 +11034,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1774, + "id": 3261, "isConstant": false, "isLValue": false, "isPure": false, @@ -11045,19 +11045,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1767, + "id": 3254, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1765, + "id": 3252, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1744, - "src": "11842:11:2", + "referencedDeclaration": 3231, + "src": "11960:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11068,14 +11068,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1766, + "id": 3253, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11857:1:2", + "src": "11975:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -11083,7 +11083,7 @@ }, "value": "0" }, - "src": "11842:16:2", + "src": "11960:16:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11097,7 +11097,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1773, + "id": 3260, "isConstant": false, "isLValue": false, "isPure": false, @@ -11108,26 +11108,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1768, + "id": 3255, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "11862:10:2", + "referencedDeclaration": 2623, + "src": "11980:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1770, + "id": 3257, "indexExpression": { "argumentTypes": null, - "id": 1769, + "id": 3256, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1744, - "src": "11873:11:2", + "referencedDeclaration": 3231, + "src": "11991:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11138,21 +11138,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11862:23:2", + "src": "11980:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1771, + "id": 3258, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 1123, - "src": "11862:32:2", + "referencedDeclaration": 2610, + "src": "11980:32:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11163,14 +11163,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "74727565", - "id": 1772, + "id": 3259, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "11898:4:2", + "src": "12016:4:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -11178,59 +11178,59 @@ }, "value": "true" }, - "src": "11862:40:2", + "src": "11980:40:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "11842:60:2", + "src": "11960:60:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 1775, + "id": 3262, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11841:62:2", + "src": "11959:62:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "11639:264:2", + "src": "11757:264:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1780, + "id": 3267, "nodeType": "IfStatement", - "src": "11591:335:2", + "src": "11709:333:6", "trueBody": { - "id": 1779, + "id": 3266, "nodeType": "Block", - "src": "11910:16:2", + "src": "12028:14:6", "statements": [ { "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 1777, + "id": 3264, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "11919:4:2", + "src": "12036:4:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -11238,10 +11238,10 @@ }, "value": "true" }, - "functionReturnParameters": 1742, - "id": 1778, + "functionReturnParameters": 3229, + "id": 3265, "nodeType": "Return", - "src": "11912:11:2" + "src": "12029:11:6" } ] } @@ -11250,14 +11250,14 @@ "expression": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 1781, + "id": 3268, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "11939:5:2", + "src": "12055:5:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -11265,15 +11265,15 @@ }, "value": "false" }, - "functionReturnParameters": 1742, - "id": 1782, + "functionReturnParameters": 3229, + "id": 3269, "nodeType": "Return", - "src": "11932:12:2" + "src": "12048:12:6" } ] }, "documentation": "@dev Determines whether the given listingHash be whitelisted.\n@param _listingHash The listingHash whose status is to be examined", - "id": 1784, + "id": 3271, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -11281,16 +11281,16 @@ "name": "canBeWhitelisted", "nodeType": "FunctionDefinition", "parameters": { - "id": 1739, + "id": 3226, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1738, + "id": 3225, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1784, - "src": "11269:20:2", + "scope": 3271, + "src": "11387:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11298,10 +11298,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1737, + "id": 3224, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "11269:7:2", + "src": "11387:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -11311,20 +11311,20 @@ "visibility": "internal" } ], - "src": "11268:22:2" + "src": "11386:22:6" }, "payable": false, "returnParameters": { - "id": 1742, + "id": 3229, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1741, + "id": 3228, "name": "", "nodeType": "VariableDeclaration", - "scope": 1784, - "src": "11312:4:2", + "scope": 3271, + "src": "11430:4:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11332,10 +11332,10 @@ "typeString": "bool" }, "typeName": { - "id": 1740, + "id": 3227, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "11312:4:2", + "src": "11430:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11345,19 +11345,19 @@ "visibility": "internal" } ], - "src": "11311:6:2" + "src": "11429:6:6" }, - "scope": 2106, - "src": "11243:706:2", + "scope": 3593, + "src": "11361:704:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1796, + "id": 3283, "nodeType": "Block", - "src": "12195:52:2", + "src": "12311:52:6", "statements": [ { "expression": { @@ -11366,26 +11366,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1791, + "id": 3278, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "12208:8:2", + "referencedDeclaration": 2627, + "src": "12324:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1793, + "id": 3280, "indexExpression": { "argumentTypes": null, - "id": 1792, + "id": 3279, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1786, - "src": "12217:12:2", + "referencedDeclaration": 3273, + "src": "12333:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -11396,35 +11396,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12208:22:2", + "src": "12324:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1794, + "id": 3281, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "whitelisted", "nodeType": "MemberAccess", - "referencedDeclaration": 1110, - "src": "12208:34:2", + "referencedDeclaration": 2597, + "src": "12324:34:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1790, - "id": 1795, + "functionReturnParameters": 3277, + "id": 3282, "nodeType": "Return", - "src": "12201:41:2" + "src": "12317:41:6" } ] }, "documentation": "@dev Returns true if the provided listingHash is whitelisted\n@param _listingHash The listingHash whose status is to be examined", - "id": 1797, + "id": 3284, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -11432,16 +11432,16 @@ "name": "isWhitelisted", "nodeType": "FunctionDefinition", "parameters": { - "id": 1787, + "id": 3274, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1786, + "id": 3273, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "12134:20:2", + "scope": 3284, + "src": "12250:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11449,10 +11449,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1785, + "id": 3272, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "12134:7:2", + "src": "12250:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -11462,20 +11462,20 @@ "visibility": "internal" } ], - "src": "12133:22:2" + "src": "12249:22:6" }, "payable": false, "returnParameters": { - "id": 1790, + "id": 3277, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1789, + "id": 3276, "name": "whitelisted", "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "12177:16:2", + "scope": 3284, + "src": "12293:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11483,10 +11483,10 @@ "typeString": "bool" }, "typeName": { - "id": 1788, + "id": 3275, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "12177:4:2", + "src": "12293:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11496,19 +11496,19 @@ "visibility": "internal" } ], - "src": "12176:18:2" + "src": "12292:18:6" }, - "scope": 2106, - "src": "12111:136:2", + "scope": 3593, + "src": "12227:136:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1811, + "id": 3298, "nodeType": "Block", - "src": "12483:62:2", + "src": "12599:62:6", "statements": [ { "expression": { @@ -11517,7 +11517,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1809, + "id": 3296, "isConstant": false, "isLValue": false, "isPure": false, @@ -11528,26 +11528,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1804, + "id": 3291, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "12496:8:2", + "referencedDeclaration": 2627, + "src": "12612:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1806, + "id": 3293, "indexExpression": { "argumentTypes": null, - "id": 1805, + "id": 3292, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1799, - "src": "12505:12:2", + "referencedDeclaration": 3286, + "src": "12621:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -11558,21 +11558,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12496:22:2", + "src": "12612:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1807, + "id": 3294, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "applicationExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 1108, - "src": "12496:40:2", + "referencedDeclaration": 2595, + "src": "12612:40:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11583,14 +11583,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1808, + "id": 3295, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12539:1:2", + "src": "12655:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -11598,21 +11598,21 @@ }, "value": "0" }, - "src": "12496:44:2", + "src": "12612:44:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1803, - "id": 1810, + "functionReturnParameters": 3290, + "id": 3297, "nodeType": "Return", - "src": "12489:51:2" + "src": "12605:51:6" } ] }, "documentation": "@dev Returns true if apply was called for this listingHash\n@param _listingHash The listingHash whose status is to be examined", - "id": 1812, + "id": 3299, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -11620,16 +11620,16 @@ "name": "appWasMade", "nodeType": "FunctionDefinition", "parameters": { - "id": 1800, + "id": 3287, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1799, + "id": 3286, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1812, - "src": "12427:20:2", + "scope": 3299, + "src": "12543:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11637,10 +11637,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1798, + "id": 3285, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "12427:7:2", + "src": "12543:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -11650,20 +11650,20 @@ "visibility": "internal" } ], - "src": "12426:22:2" + "src": "12542:22:6" }, "payable": false, "returnParameters": { - "id": 1803, + "id": 3290, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1802, + "id": 3289, "name": "exists", "nodeType": "VariableDeclaration", - "scope": 1812, - "src": "12470:11:2", + "scope": 3299, + "src": "12586:11:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11671,10 +11671,10 @@ "typeString": "bool" }, "typeName": { - "id": 1801, + "id": 3288, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "12470:4:2", + "src": "12586:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11684,32 +11684,32 @@ "visibility": "internal" } ], - "src": "12469:13:2" + "src": "12585:13:6" }, - "scope": 2106, - "src": "12407:138:2", + "scope": 3593, + "src": "12523:138:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1840, + "id": 3327, "nodeType": "Block", - "src": "12797:155:2", + "src": "12913:155:6", "statements": [ { "assignments": [ - 1820 + 3307 ], "declarations": [ { "constant": false, - "id": 1820, + "id": 3307, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1841, - "src": "12803:16:2", + "scope": 3328, + "src": "12919:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11717,10 +11717,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1819, + "id": 3306, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12803:4:2", + "src": "12919:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11730,33 +11730,33 @@ "visibility": "internal" } ], - "id": 1825, + "id": 3312, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1821, + "id": 3308, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "12822:8:2", + "referencedDeclaration": 2627, + "src": "12938:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1823, + "id": 3310, "indexExpression": { "argumentTypes": null, - "id": 1822, + "id": 3309, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1814, - "src": "12831:12:2", + "referencedDeclaration": 3301, + "src": "12947:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -11767,28 +11767,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12822:22:2", + "src": "12938:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1824, + "id": 3311, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "12822:34:2", + "referencedDeclaration": 2603, + "src": "12938:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12803:53:2" + "src": "12919:53:6" }, { "expression": { @@ -11800,7 +11800,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1837, + "id": 3324, "isConstant": false, "isLValue": false, "isPure": false, @@ -11811,7 +11811,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1831, + "id": 3318, "isConstant": false, "isLValue": false, "isPure": false, @@ -11822,26 +11822,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1826, + "id": 3313, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "12871:8:2", + "referencedDeclaration": 2627, + "src": "12987:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1828, + "id": 3315, "indexExpression": { "argumentTypes": null, - "id": 1827, + "id": 3314, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1814, - "src": "12880:12:2", + "referencedDeclaration": 3301, + "src": "12996:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -11852,21 +11852,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12871:22:2", + "src": "12987:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1829, + "id": 3316, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "12871:34:2", + "referencedDeclaration": 2603, + "src": "12987:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11877,14 +11877,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1830, + "id": 3317, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12908:1:2", + "src": "13024:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -11892,7 +11892,7 @@ }, "value": "0" }, - "src": "12871:38:2", + "src": "12987:38:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11902,7 +11902,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 1836, + "id": 3323, "isConstant": false, "isLValue": false, "isPure": false, @@ -11910,33 +11910,33 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "12913:33:2", + "src": "13029:33:6", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1832, + "id": 3319, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "12914:10:2", + "referencedDeclaration": 2623, + "src": "13030:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1834, + "id": 3321, "indexExpression": { "argumentTypes": null, - "id": 1833, + "id": 3320, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1820, - "src": "12925:11:2", + "referencedDeclaration": 3307, + "src": "13041:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11947,21 +11947,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12914:23:2", + "src": "13030:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1835, + "id": 3322, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 1123, - "src": "12914:32:2", + "referencedDeclaration": 2610, + "src": "13030:32:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -11972,35 +11972,35 @@ "typeString": "bool" } }, - "src": "12871:75:2", + "src": "12987:75:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 1838, + "id": 3325, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "12870:77:2", + "src": "12986:77:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1818, - "id": 1839, + "functionReturnParameters": 3305, + "id": 3326, "nodeType": "Return", - "src": "12863:84:2" + "src": "12979:84:6" } ] }, "documentation": "@dev Returns true if the application/listingHash has an unresolved challenge\n@param _listingHash The listingHash whose status is to be examined", - "id": 1841, + "id": 3328, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -12008,16 +12008,16 @@ "name": "challengeExists", "nodeType": "FunctionDefinition", "parameters": { - "id": 1815, + "id": 3302, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1814, + "id": 3301, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1841, - "src": "12748:20:2", + "scope": 3328, + "src": "12864:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12025,10 +12025,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1813, + "id": 3300, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "12748:7:2", + "src": "12864:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12038,20 +12038,20 @@ "visibility": "internal" } ], - "src": "12747:22:2" + "src": "12863:22:6" }, "payable": false, "returnParameters": { - "id": 1818, + "id": 3305, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1817, + "id": 3304, "name": "", "nodeType": "VariableDeclaration", - "scope": 1841, - "src": "12791:4:2", + "scope": 3328, + "src": "12907:4:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12059,10 +12059,10 @@ "typeString": "bool" }, "typeName": { - "id": 1816, + "id": 3303, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "12791:4:2", + "src": "12907:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -12072,32 +12072,32 @@ "visibility": "internal" } ], - "src": "12790:6:2" + "src": "12906:6:6" }, - "scope": 2106, - "src": "12723:229:2", + "scope": 3593, + "src": "12839:229:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1866, + "id": 3353, "nodeType": "Block", - "src": "13268:152:2", + "src": "13384:152:6", "statements": [ { "assignments": [ - 1849 + 3336 ], "declarations": [ { "constant": false, - "id": 1849, + "id": 3336, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1867, - "src": "13274:16:2", + "scope": 3354, + "src": "13390:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12105,10 +12105,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1848, + "id": 3335, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "13274:4:2", + "src": "13390:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12118,33 +12118,33 @@ "visibility": "internal" } ], - "id": 1854, + "id": 3341, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1850, + "id": 3337, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "13293:8:2", + "referencedDeclaration": 2627, + "src": "13409:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1852, + "id": 3339, "indexExpression": { "argumentTypes": null, - "id": 1851, + "id": 3338, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1843, - "src": "13302:12:2", + "referencedDeclaration": 3330, + "src": "13418:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12155,28 +12155,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13293:22:2", + "src": "13409:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1853, + "id": 3340, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "13293:34:2", + "referencedDeclaration": 2603, + "src": "13409:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "13274:53:2" + "src": "13390:53:6" }, { "expression": { @@ -12187,12 +12187,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1857, + "id": 3344, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1843, - "src": "13358:12:2", + "referencedDeclaration": 3330, + "src": "13474:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12206,18 +12206,18 @@ "typeString": "bytes32" } ], - "id": 1856, + "id": 3343, "name": "challengeExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1841, - "src": "13342:15:2", + "referencedDeclaration": 3328, + "src": "13458:15:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1858, + "id": 3345, "isConstant": false, "isLValue": false, "isPure": false, @@ -12225,7 +12225,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13342:29:2", + "src": "13458:29:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -12239,21 +12239,21 @@ "typeString": "bool" } ], - "id": 1855, + "id": 3342, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "13334:7:2", + "referencedDeclaration": 3705, + "src": "13450:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1859, + "id": 3346, "isConstant": false, "isLValue": false, "isPure": false, @@ -12261,15 +12261,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13334:38:2", + "src": "13450:38:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1860, + "id": 3347, "nodeType": "ExpressionStatement", - "src": "13334:38:2" + "src": "13450:38:6" }, { "expression": { @@ -12277,12 +12277,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1863, + "id": 3350, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1849, - "src": "13403:11:2", + "referencedDeclaration": 3336, + "src": "13519:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12298,32 +12298,32 @@ ], "expression": { "argumentTypes": null, - "id": 1861, + "id": 3348, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "13386:6:2", + "referencedDeclaration": 2631, + "src": "13502:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1862, + "id": 3349, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "pollEnded", "nodeType": "MemberAccess", - "referencedDeclaration": 3207, - "src": "13386:16:2", + "referencedDeclaration": 1187, + "src": "13502:16:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view external returns (bool)" } }, - "id": 1864, + "id": 3351, "isConstant": false, "isLValue": false, "isPure": false, @@ -12331,21 +12331,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13386:29:2", + "src": "13502:29:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1847, - "id": 1865, + "functionReturnParameters": 3334, + "id": 3352, "nodeType": "Return", - "src": "13379:36:2" + "src": "13495:36:6" } ] }, "documentation": "@dev Determines whether voting has concluded in a challenge for a given\nlistingHash. Throws if no challenge exists.\n@param _listingHash A listingHash with an unresolved challenge", - "id": 1867, + "id": 3354, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -12353,16 +12353,16 @@ "name": "challengeCanBeResolved", "nodeType": "FunctionDefinition", "parameters": { - "id": 1844, + "id": 3331, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1843, + "id": 3330, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1867, - "src": "13219:20:2", + "scope": 3354, + "src": "13335:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12370,10 +12370,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1842, + "id": 3329, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "13219:7:2", + "src": "13335:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -12383,20 +12383,20 @@ "visibility": "internal" } ], - "src": "13218:22:2" + "src": "13334:22:6" }, "payable": false, "returnParameters": { - "id": 1847, + "id": 3334, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1846, + "id": 3333, "name": "", "nodeType": "VariableDeclaration", - "scope": 1867, - "src": "13262:4:2", + "scope": 3354, + "src": "13378:4:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12404,10 +12404,10 @@ "typeString": "bool" }, "typeName": { - "id": 1845, + "id": 3332, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13262:4:2", + "src": "13378:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -12417,19 +12417,19 @@ "visibility": "internal" } ], - "src": "13261:6:2" + "src": "13377:6:6" }, - "scope": 2106, - "src": "13187:233:2", + "scope": 3593, + "src": "13303:233:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1915, + "id": 3402, "nodeType": "Block", - "src": "13669:375:2", + "src": "13785:375:6", "statements": [ { "expression": { @@ -12441,14 +12441,14 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1884, + "id": 3371, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1879, + "id": 3366, "isConstant": false, "isLValue": false, "isPure": false, @@ -12456,33 +12456,33 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "13683:34:2", + "src": "13799:34:6", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1875, + "id": 3362, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "13684:10:2", + "referencedDeclaration": 2623, + "src": "13800:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1877, + "id": 3364, "indexExpression": { "argumentTypes": null, - "id": 1876, + "id": 3363, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, - "src": "13695:12:2", + "referencedDeclaration": 3356, + "src": "13811:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12493,21 +12493,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13684:24:2", + "src": "13800:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1878, + "id": 3365, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 1123, - "src": "13684:33:2", + "referencedDeclaration": 2610, + "src": "13800:33:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -12525,12 +12525,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1882, + "id": 3369, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, - "src": "13738:12:2", + "referencedDeclaration": 3356, + "src": "13854:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12546,32 +12546,32 @@ ], "expression": { "argumentTypes": null, - "id": 1880, + "id": 3367, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "13721:6:2", + "referencedDeclaration": 2631, + "src": "13837:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1881, + "id": 3368, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "pollEnded", "nodeType": "MemberAccess", - "referencedDeclaration": 3207, - "src": "13721:16:2", + "referencedDeclaration": 1187, + "src": "13837:16:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view external returns (bool)" } }, - "id": 1883, + "id": 3370, "isConstant": false, "isLValue": false, "isPure": false, @@ -12579,13 +12579,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13721:30:2", + "src": "13837:30:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "13683:68:2", + "src": "13799:68:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -12599,21 +12599,21 @@ "typeString": "bool" } ], - "id": 1874, + "id": 3361, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "13675:7:2", + "referencedDeclaration": 3705, + "src": "13791:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1885, + "id": 3372, "isConstant": false, "isLValue": false, "isPure": false, @@ -12621,15 +12621,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13675:77:2", + "src": "13791:77:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1886, + "id": 3373, "nodeType": "ExpressionStatement", - "src": "13675:77:2" + "src": "13791:77:6" }, { "condition": { @@ -12638,7 +12638,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1892, + "id": 3379, "isConstant": false, "isLValue": false, "isPure": false, @@ -12648,12 +12648,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1889, + "id": 3376, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, - "src": "13876:12:2", + "referencedDeclaration": 3356, + "src": "13992:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12669,32 +12669,32 @@ ], "expression": { "argumentTypes": null, - "id": 1887, + "id": 3374, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "13830:6:2", + "referencedDeclaration": 2631, + "src": "13946:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1888, + "id": 3375, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getTotalNumberOfTokensForWinningOption", "nodeType": "MemberAccess", - "referencedDeclaration": 3186, - "src": "13830:45:2", + "referencedDeclaration": 1166, + "src": "13946:45:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256) view external returns (uint256)" } }, - "id": 1890, + "id": 3377, "isConstant": false, "isLValue": false, "isPure": false, @@ -12702,7 +12702,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13830:59:2", + "src": "13946:59:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12713,14 +12713,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1891, + "id": 3378, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13893:1:2", + "src": "14009:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -12728,20 +12728,20 @@ }, "value": "0" }, - "src": "13830:64:2", + "src": "13946:64:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1901, + "id": 3388, "nodeType": "IfStatement", - "src": "13826:126:2", + "src": "13942:126:6", "trueBody": { - "id": 1900, + "id": 3387, "nodeType": "Block", - "src": "13896:56:2", + "src": "14012:56:6", "statements": [ { "expression": { @@ -12750,7 +12750,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1898, + "id": 3385, "isConstant": false, "isLValue": false, "isPure": false, @@ -12758,14 +12758,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "32", - "id": 1893, + "id": 3380, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13911:1:2", + "src": "14027:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", @@ -12781,26 +12781,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1894, + "id": 3381, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "13915:10:2", + "referencedDeclaration": 2623, + "src": "14031:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1896, + "id": 3383, "indexExpression": { "argumentTypes": null, - "id": 1895, + "id": 3382, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, - "src": "13926:12:2", + "referencedDeclaration": 3356, + "src": "14042:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12811,36 +12811,36 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13915:24:2", + "src": "14031:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1897, + "id": 3384, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "stake", "nodeType": "MemberAccess", - "referencedDeclaration": 1125, - "src": "13915:30:2", + "referencedDeclaration": 2612, + "src": "14031:30:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13911:34:2", + "src": "14027:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1873, - "id": 1899, + "functionReturnParameters": 3360, + "id": 3386, "nodeType": "Return", - "src": "13904:41:2" + "src": "14020:41:6" } ] } @@ -12852,7 +12852,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1913, + "id": 3400, "isConstant": false, "isLValue": false, "isPure": false, @@ -12866,7 +12866,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1907, + "id": 3394, "isConstant": false, "isLValue": false, "isPure": false, @@ -12874,14 +12874,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "32", - "id": 1902, + "id": 3389, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13966:1:2", + "src": "14082:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", @@ -12897,26 +12897,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1903, + "id": 3390, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "13970:10:2", + "referencedDeclaration": 2623, + "src": "14086:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1905, + "id": 3392, "indexExpression": { "argumentTypes": null, - "id": 1904, + "id": 3391, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, - "src": "13981:12:2", + "referencedDeclaration": 3356, + "src": "14097:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12927,41 +12927,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13970:24:2", + "src": "14086:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1906, + "id": 3393, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "stake", "nodeType": "MemberAccess", - "referencedDeclaration": 1125, - "src": "13970:30:2", + "referencedDeclaration": 2612, + "src": "14086:30:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13966:34:2", + "src": "14082:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1908, + "id": 3395, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "13965:36:2", + "src": "14081:36:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12975,26 +12975,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1909, + "id": 3396, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "14004:10:2", + "referencedDeclaration": 2623, + "src": "14120:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1911, + "id": 3398, "indexExpression": { "argumentTypes": null, - "id": 1910, + "id": 3397, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, - "src": "14015:12:2", + "referencedDeclaration": 3356, + "src": "14131:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13005,41 +13005,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14004:24:2", + "src": "14120:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1912, + "id": 3399, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 1119, - "src": "14004:35:2", + "referencedDeclaration": 2606, + "src": "14120:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13965:74:2", + "src": "14081:74:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1873, - "id": 1914, + "functionReturnParameters": 3360, + "id": 3401, "nodeType": "Return", - "src": "13958:81:2" + "src": "14074:81:6" } ] }, "documentation": "@dev Determines the number of tokens awarded to the winning party in a challenge.\n@param _challengeID The challengeID to determine a reward for", - "id": 1916, + "id": 3403, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -13047,16 +13047,16 @@ "name": "determineReward", "nodeType": "FunctionDefinition", "parameters": { - "id": 1870, + "id": 3357, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1869, + "id": 3356, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 1916, - "src": "13623:17:2", + "scope": 3403, + "src": "13739:17:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13064,10 +13064,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1868, + "id": 3355, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "13623:4:2", + "src": "13739:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13077,20 +13077,20 @@ "visibility": "internal" } ], - "src": "13622:19:2" + "src": "13738:19:6" }, "payable": false, "returnParameters": { - "id": 1873, + "id": 3360, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1872, + "id": 3359, "name": "", "nodeType": "VariableDeclaration", - "scope": 1916, - "src": "13663:4:2", + "scope": 3403, + "src": "13779:4:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13098,10 +13098,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1871, + "id": 3358, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "13663:4:2", + "src": "13779:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13111,19 +13111,19 @@ "visibility": "internal" } ], - "src": "13662:6:2" + "src": "13778:6:6" }, - "scope": 2106, - "src": "13598:446:2", + "scope": 3593, + "src": "13714:446:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1932, + "id": 3419, "nodeType": "Block", - "src": "14342:62:2", + "src": "14458:62:6", "statements": [ { "expression": { @@ -13134,26 +13134,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1925, + "id": 3412, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "14355:10:2", + "referencedDeclaration": 2623, + "src": "14471:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1927, + "id": 3414, "indexExpression": { "argumentTypes": null, - "id": 1926, + "id": 3413, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1918, - "src": "14366:12:2", + "referencedDeclaration": 3405, + "src": "14482:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13164,35 +13164,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14355:24:2", + "src": "14471:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1928, + "id": 3415, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokenClaims", "nodeType": "MemberAccess", - "referencedDeclaration": 1131, - "src": "14355:36:2", + "referencedDeclaration": 2618, + "src": "14471:36:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 1930, + "id": 3417, "indexExpression": { "argumentTypes": null, - "id": 1929, + "id": 3416, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1920, - "src": "14392:6:2", + "referencedDeclaration": 3407, + "src": "14508:6:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13203,21 +13203,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14355:44:2", + "src": "14471:44:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1924, - "id": 1931, + "functionReturnParameters": 3411, + "id": 3418, "nodeType": "Return", - "src": "14348:51:2" + "src": "14464:51:6" } ] }, "documentation": "@dev Getter for Challenge tokenClaims mappings\n@param _challengeID The challengeID to query\n@param _voter The voter whose claim status to query for the provided challengeID", - "id": 1933, + "id": 3420, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -13225,16 +13225,16 @@ "name": "tokenClaims", "nodeType": "FunctionDefinition", "parameters": { - "id": 1921, + "id": 3408, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1918, + "id": 3405, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 1933, - "src": "14280:17:2", + "scope": 3420, + "src": "14396:17:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13242,10 +13242,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1917, + "id": 3404, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "14280:4:2", + "src": "14396:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13256,11 +13256,11 @@ }, { "constant": false, - "id": 1920, + "id": 3407, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 1933, - "src": "14299:14:2", + "scope": 3420, + "src": "14415:14:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13268,10 +13268,10 @@ "typeString": "address" }, "typeName": { - "id": 1919, + "id": 3406, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14299:7:2", + "src": "14415:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13281,20 +13281,20 @@ "visibility": "internal" } ], - "src": "14279:35:2" + "src": "14395:35:6" }, "payable": false, "returnParameters": { - "id": 1924, + "id": 3411, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1923, + "id": 3410, "name": "", "nodeType": "VariableDeclaration", - "scope": 1933, - "src": "14336:4:2", + "scope": 3420, + "src": "14452:4:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13302,10 +13302,10 @@ "typeString": "bool" }, "typeName": { - "id": 1922, + "id": 3409, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "14336:4:2", + "src": "14452:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -13315,32 +13315,32 @@ "visibility": "internal" } ], - "src": "14335:6:2" + "src": "14451:6:6" }, - "scope": 2106, - "src": "14259:145:2", + "scope": 3593, + "src": "14375:145:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2027, + "id": 3514, "nodeType": "Block", - "src": "14784:1218:2", + "src": "14900:1308:6", "statements": [ { "assignments": [ - 1939 + 3426 ], "declarations": [ { "constant": false, - "id": 1939, + "id": 3426, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 2028, - "src": "14790:16:2", + "scope": 3515, + "src": "14906:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13348,10 +13348,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1938, + "id": 3425, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "14790:4:2", + "src": "14906:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13361,33 +13361,33 @@ "visibility": "internal" } ], - "id": 1944, + "id": 3431, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1940, + "id": 3427, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "14809:8:2", + "referencedDeclaration": 2627, + "src": "14925:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1942, + "id": 3429, "indexExpression": { "argumentTypes": null, - "id": 1941, + "id": 3428, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1935, - "src": "14818:12:2", + "referencedDeclaration": 3422, + "src": "14934:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -13398,41 +13398,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14809:22:2", + "src": "14925:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1943, + "id": 3430, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "14809:34:2", + "referencedDeclaration": 2603, + "src": "14925:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14790:53:2" + "src": "14906:53:6" }, { "assignments": [ - 1946 + 3433 ], "declarations": [ { "constant": false, - "id": 1946, + "id": 3433, "name": "reward", "nodeType": "VariableDeclaration", - "scope": 2028, - "src": "14964:11:2", + "scope": 3515, + "src": "15080:11:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13440,10 +13440,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1945, + "id": 3432, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "14964:4:2", + "src": "15080:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13453,18 +13453,18 @@ "visibility": "internal" } ], - "id": 1950, + "id": 3437, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1948, + "id": 3435, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "14994:11:2", + "referencedDeclaration": 3426, + "src": "15110:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13478,18 +13478,18 @@ "typeString": "uint256" } ], - "id": 1947, + "id": 3434, "name": "determineReward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1916, - "src": "14978:15:2", + "referencedDeclaration": 3403, + "src": "15094:15:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256) view returns (uint256)" } }, - "id": 1949, + "id": 3436, "isConstant": false, "isLValue": false, "isPure": false, @@ -13497,19 +13497,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14978:28:2", + "src": "15094:28:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14964:42:2" + "src": "15080:42:6" }, { "expression": { "argumentTypes": null, - "id": 1956, + "id": 3443, "isConstant": false, "isLValue": false, "isPure": false, @@ -13520,26 +13520,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1951, + "id": 3438, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "15059:10:2", + "referencedDeclaration": 2623, + "src": "15175:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1953, + "id": 3440, "indexExpression": { "argumentTypes": null, - "id": 1952, + "id": 3439, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15070:11:2", + "referencedDeclaration": 3426, + "src": "15186:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13550,21 +13550,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15059:23:2", + "src": "15175:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1954, + "id": 3441, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 1123, - "src": "15059:32:2", + "referencedDeclaration": 2610, + "src": "15175:32:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -13575,14 +13575,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 1955, + "id": 3442, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "15094:4:2", + "src": "15210:4:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -13590,20 +13590,20 @@ }, "value": "true" }, - "src": "15059:39:2", + "src": "15175:39:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1957, + "id": 3444, "nodeType": "ExpressionStatement", - "src": "15059:39:2" + "src": "15175:39:6" }, { "expression": { "argumentTypes": null, - "id": 1966, + "id": 3453, "isConstant": false, "isLValue": false, "isPure": false, @@ -13614,26 +13614,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1958, + "id": 3445, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "15192:10:2", + "referencedDeclaration": 2623, + "src": "15308:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1960, + "id": 3447, "indexExpression": { "argumentTypes": null, - "id": 1959, + "id": 3446, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15203:11:2", + "referencedDeclaration": 3426, + "src": "15319:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13644,21 +13644,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15192:23:2", + "src": "15308:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1961, + "id": 3448, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "totalTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 1127, - "src": "15192:35:2", + "referencedDeclaration": 2614, + "src": "15308:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13671,12 +13671,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1964, + "id": 3451, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15276:11:2", + "referencedDeclaration": 3426, + "src": "15392:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13692,32 +13692,32 @@ ], "expression": { "argumentTypes": null, - "id": 1962, + "id": 3449, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "15230:6:2", + "referencedDeclaration": 2631, + "src": "15346:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1963, + "id": 3450, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getTotalNumberOfTokensForWinningOption", "nodeType": "MemberAccess", - "referencedDeclaration": 3186, - "src": "15230:45:2", + "referencedDeclaration": 1166, + "src": "15346:45:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256) view external returns (uint256)" } }, - "id": 1965, + "id": 3452, "isConstant": false, "isLValue": false, "isPure": false, @@ -13725,21 +13725,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15230:58:2", + "src": "15346:58:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "15192:96:2", + "src": "15308:96:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1967, + "id": 3454, "nodeType": "ExpressionStatement", - "src": "15192:96:2" + "src": "15308:96:6" }, { "condition": { @@ -13747,12 +13747,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1970, + "id": 3457, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15345:11:2", + "referencedDeclaration": 3426, + "src": "15461:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13768,32 +13768,32 @@ ], "expression": { "argumentTypes": null, - "id": 1968, + "id": 3455, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "15329:6:2", + "referencedDeclaration": 2631, + "src": "15445:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1969, + "id": 3456, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "isPassed", "nodeType": "MemberAccess", - "referencedDeclaration": 3158, - "src": "15329:15:2", + "referencedDeclaration": 1138, + "src": "15445:15:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view external returns (bool)" } }, - "id": 1971, + "id": 3458, "isConstant": false, "isLValue": false, "isPure": false, @@ -13801,16 +13801,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15329:28:2", + "src": "15445:28:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 2025, + "id": 3512, "nodeType": "Block", - "src": "15662:336:2", + "src": "15823:381:6", "statements": [ { "expression": { @@ -13818,12 +13818,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1998, + "id": 3485, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1935, - "src": "15728:12:2", + "referencedDeclaration": 3422, + "src": "15889:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -13837,18 +13837,18 @@ "typeString": "bytes32" } ], - "id": 1997, + "id": 3484, "name": "resetListing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2105, - "src": "15715:12:2", + "referencedDeclaration": 3592, + "src": "15876:12:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1999, + "id": 3486, "isConstant": false, "isLValue": false, "isPure": false, @@ -13856,15 +13856,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15715:26:2", + "src": "15876:26:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2000, + "id": 3487, "nodeType": "ExpressionStatement", - "src": "15715:26:2" + "src": "15876:26:6" }, { "expression": { @@ -13879,26 +13879,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2004, + "id": 3491, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "15819:10:2", + "referencedDeclaration": 2623, + "src": "15980:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 2006, + "id": 3493, "indexExpression": { "argumentTypes": null, - "id": 2005, + "id": 3492, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15830:11:2", + "referencedDeclaration": 3426, + "src": "15991:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13909,21 +13909,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15819:23:2", + "src": "15980:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 2007, + "id": 3494, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challenger", "nodeType": "MemberAccess", - "referencedDeclaration": 1121, - "src": "15819:34:2", + "referencedDeclaration": 2608, + "src": "15980:34:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13931,12 +13931,12 @@ }, { "argumentTypes": null, - "id": 2008, + "id": 3495, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1946, - "src": "15855:6:2", + "referencedDeclaration": 3433, + "src": "16016:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13956,32 +13956,32 @@ ], "expression": { "argumentTypes": null, - "id": 2002, + "id": 3489, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "15804:5:2", + "referencedDeclaration": 2629, + "src": "15965:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 2003, + "id": 3490, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "15804:14:2", + "referencedDeclaration": 431, + "src": "15965:14:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 2009, + "id": 3496, "isConstant": false, "isLValue": false, "isPure": false, @@ -13989,7 +13989,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15804:58:2", + "src": "15965:58:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -14003,21 +14003,21 @@ "typeString": "bool" } ], - "id": 2001, + "id": 3488, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "15796:7:2", + "referencedDeclaration": 3705, + "src": "15957:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2010, + "id": 3497, "isConstant": false, "isLValue": false, "isPure": false, @@ -14025,28 +14025,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15796:67:2", + "src": "15957:67:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2011, + "id": 3498, "nodeType": "ExpressionStatement", - "src": "15796:67:2" + "src": "15957:67:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2013, + "id": 3500, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1935, - "src": "15892:12:2", + "referencedDeclaration": 3422, + "src": "16067:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14054,12 +14054,12 @@ }, { "argumentTypes": null, - "id": 2014, + "id": 3501, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15906:11:2", + "referencedDeclaration": 3426, + "src": "16089:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14071,26 +14071,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2015, + "id": 3502, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "15919:10:2", + "referencedDeclaration": 2623, + "src": "16110:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 2017, + "id": 3504, "indexExpression": { "argumentTypes": null, - "id": 2016, + "id": 3503, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15930:11:2", + "referencedDeclaration": 3426, + "src": "16121:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14101,21 +14101,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15919:23:2", + "src": "16110:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 2018, + "id": 3505, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 1119, - "src": "15919:34:2", + "referencedDeclaration": 2606, + "src": "16110:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14127,26 +14127,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2019, + "id": 3506, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "15955:10:2", + "referencedDeclaration": 2623, + "src": "16154:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 2021, + "id": 3508, "indexExpression": { "argumentTypes": null, - "id": 2020, + "id": 3507, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15966:11:2", + "referencedDeclaration": 3426, + "src": "16165:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14157,21 +14157,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15955:23:2", + "src": "16154:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 2022, + "id": 3509, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "totalTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 1127, - "src": "15955:35:2", + "referencedDeclaration": 2614, + "src": "16154:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14197,18 +14197,18 @@ "typeString": "uint256" } ], - "id": 2012, + "id": 3499, "name": "_ChallengeSucceeded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1095, - "src": "15872:19:2", + "referencedDeclaration": 2582, + "src": "16038:19:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (bytes32,uint256,uint256,uint256)" } }, - "id": 2023, + "id": 3510, "isConstant": false, "isLValue": false, "isPure": false, @@ -14216,25 +14216,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15872:119:2", + "src": "16038:159:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2024, - "nodeType": "ExpressionStatement", - "src": "15872:119:2" + "id": 3511, + "nodeType": "EmitStatement", + "src": "16033:164:6" } ] }, - "id": 2026, + "id": 3513, "nodeType": "IfStatement", - "src": "15325:673:2", + "src": "15441:763:6", "trueBody": { - "id": 1996, + "id": 3483, "nodeType": "Block", - "src": "15359:297:2", + "src": "15475:342:6", "statements": [ { "expression": { @@ -14242,12 +14242,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1973, + "id": 3460, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1935, - "src": "15388:12:2", + "referencedDeclaration": 3422, + "src": "15504:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14261,18 +14261,18 @@ "typeString": "bytes32" } ], - "id": 1972, + "id": 3459, "name": "whitelistApplication", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2052, - "src": "15367:20:2", + "referencedDeclaration": 3539, + "src": "15483:20:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1974, + "id": 3461, "isConstant": false, "isLValue": false, "isPure": false, @@ -14280,20 +14280,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15367:34:2", + "src": "15483:34:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1975, + "id": 3462, "nodeType": "ExpressionStatement", - "src": "15367:34:2" + "src": "15483:34:6" }, { "expression": { "argumentTypes": null, - "id": 1981, + "id": 3468, "isConstant": false, "isLValue": false, "isPure": false, @@ -14304,26 +14304,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1976, + "id": 3463, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "15476:8:2", + "referencedDeclaration": 2627, + "src": "15592:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1978, + "id": 3465, "indexExpression": { "argumentTypes": null, - "id": 1977, + "id": 3464, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1935, - "src": "15485:12:2", + "referencedDeclaration": 3422, + "src": "15601:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14334,21 +14334,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15476:22:2", + "src": "15592:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1979, + "id": 3466, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "15476:38:2", + "referencedDeclaration": 2601, + "src": "15592:38:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14358,39 +14358,39 @@ "operator": "+=", "rightHandSide": { "argumentTypes": null, - "id": 1980, + "id": 3467, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1946, - "src": "15518:6:2", + "referencedDeclaration": 3433, + "src": "15634:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "15476:48:2", + "src": "15592:48:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1982, + "id": 3469, "nodeType": "ExpressionStatement", - "src": "15476:48:2" + "src": "15592:48:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1984, + "id": 3471, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1935, - "src": "15550:12:2", + "referencedDeclaration": 3422, + "src": "15680:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14398,12 +14398,12 @@ }, { "argumentTypes": null, - "id": 1985, + "id": 3472, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15564:11:2", + "referencedDeclaration": 3426, + "src": "15702:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14415,26 +14415,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1986, + "id": 3473, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "15577:10:2", + "referencedDeclaration": 2623, + "src": "15723:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1988, + "id": 3475, "indexExpression": { "argumentTypes": null, - "id": 1987, + "id": 3474, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15588:11:2", + "referencedDeclaration": 3426, + "src": "15734:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14445,21 +14445,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15577:23:2", + "src": "15723:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1989, + "id": 3476, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 1119, - "src": "15577:34:2", + "referencedDeclaration": 2606, + "src": "15723:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14471,26 +14471,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1990, + "id": 3477, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "15613:10:2", + "referencedDeclaration": 2623, + "src": "15767:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1992, + "id": 3479, "indexExpression": { "argumentTypes": null, - "id": 1991, + "id": 3478, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15624:11:2", + "referencedDeclaration": 3426, + "src": "15778:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14501,21 +14501,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15613:23:2", + "src": "15767:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1993, + "id": 3480, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "totalTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 1127, - "src": "15613:35:2", + "referencedDeclaration": 2614, + "src": "15767:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14541,18 +14541,18 @@ "typeString": "uint256" } ], - "id": 1983, + "id": 3470, "name": "_ChallengeFailed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1085, - "src": "15533:16:2", + "referencedDeclaration": 2572, + "src": "15654:16:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (bytes32,uint256,uint256,uint256)" } }, - "id": 1994, + "id": 3481, "isConstant": false, "isLValue": false, "isPure": false, @@ -14560,15 +14560,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15533:116:2", + "src": "15654:156:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1995, - "nodeType": "ExpressionStatement", - "src": "15533:116:2" + "id": 3482, + "nodeType": "EmitStatement", + "src": "15649:161:6" } ] } @@ -14576,7 +14576,7 @@ ] }, "documentation": "@dev Determines the winner in a challenge. Rewards the winner tokens and\neither whitelists or de-whitelists the listingHash.\n@param _listingHash A listingHash with a challenge that is to be resolved", - "id": 2028, + "id": 3515, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -14584,16 +14584,16 @@ "name": "resolveChallenge", "nodeType": "FunctionDefinition", "parameters": { - "id": 1936, + "id": 3423, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1935, + "id": 3422, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 2028, - "src": "14754:20:2", + "scope": 3515, + "src": "14870:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14601,10 +14601,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1934, + "id": 3421, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "14754:7:2", + "src": "14870:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14614,31 +14614,31 @@ "visibility": "internal" } ], - "src": "14753:22:2" + "src": "14869:22:6" }, "payable": false, "returnParameters": { - "id": 1937, + "id": 3424, "nodeType": "ParameterList", "parameters": [], - "src": "14784:0:2" + "src": "14900:0:6" }, - "scope": 2106, - "src": "14728:1274:2", + "scope": 3593, + "src": "14844:1364:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "private" }, { "body": { - "id": 2051, + "id": 3538, "nodeType": "Block", - "src": "16396:140:2", + "src": "16602:143:6", "statements": [ { "condition": { "argumentTypes": null, - "id": 2037, + "id": 3524, "isConstant": false, "isLValue": false, "isPure": false, @@ -14646,33 +14646,33 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "16406:35:2", + "src": "16612:35:6", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2033, + "id": 3520, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "16407:8:2", + "referencedDeclaration": 2627, + "src": "16613:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 2035, + "id": 3522, "indexExpression": { "argumentTypes": null, - "id": 2034, + "id": 3521, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2030, - "src": "16416:12:2", + "referencedDeclaration": 3517, + "src": "16622:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14683,21 +14683,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "16407:22:2", + "src": "16613:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 2036, + "id": 3523, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "whitelisted", "nodeType": "MemberAccess", - "referencedDeclaration": 1110, - "src": "16407:34:2", + "referencedDeclaration": 2597, + "src": "16613:34:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -14709,26 +14709,26 @@ } }, "falseBody": null, - "id": 2043, + "id": 3530, "nodeType": "IfStatement", - "src": "16402:83:2", + "src": "16608:86:6", "trueBody": { - "id": 2042, + "id": 3529, "nodeType": "Block", - "src": "16443:42:2", + "src": "16649:45:6", "statements": [ { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2039, + "id": 3526, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2030, - "src": "16469:12:2", + "referencedDeclaration": 3517, + "src": "16679:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14742,18 +14742,18 @@ "typeString": "bytes32" } ], - "id": 2038, + "id": 3525, "name": "_ApplicationWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1059, - "src": "16445:23:2", + "referencedDeclaration": 2546, + "src": "16655:23:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 2040, + "id": 3527, "isConstant": false, "isLValue": false, "isPure": false, @@ -14761,15 +14761,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16445:37:2", + "src": "16655:37:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2041, - "nodeType": "ExpressionStatement", - "src": "16445:37:2" + "id": 3528, + "nodeType": "EmitStatement", + "src": "16650:42:6" } ] } @@ -14777,7 +14777,7 @@ { "expression": { "argumentTypes": null, - "id": 2049, + "id": 3536, "isConstant": false, "isLValue": false, "isPure": false, @@ -14788,26 +14788,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2044, + "id": 3531, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "16490:8:2", + "referencedDeclaration": 2627, + "src": "16699:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 2046, + "id": 3533, "indexExpression": { "argumentTypes": null, - "id": 2045, + "id": 3532, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2030, - "src": "16499:12:2", + "referencedDeclaration": 3517, + "src": "16708:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14818,21 +14818,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "16490:22:2", + "src": "16699:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 2047, + "id": 3534, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "whitelisted", "nodeType": "MemberAccess", - "referencedDeclaration": 1110, - "src": "16490:34:2", + "referencedDeclaration": 2597, + "src": "16699:34:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -14843,14 +14843,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 2048, + "id": 3535, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "16527:4:2", + "src": "16736:4:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -14858,20 +14858,20 @@ }, "value": "true" }, - "src": "16490:41:2", + "src": "16699:41:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 2050, + "id": 3537, "nodeType": "ExpressionStatement", - "src": "16490:41:2" + "src": "16699:41:6" } ] }, "documentation": "@dev Called by updateStatus() if the applicationExpiry date passed without a\nchallenge being made. Called by resolveChallenge() if an\napplication/listing beat a challenge.\n@param _listingHash The listingHash of an application/listingHash to be whitelisted", - "id": 2052, + "id": 3539, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -14879,16 +14879,16 @@ "name": "whitelistApplication", "nodeType": "FunctionDefinition", "parameters": { - "id": 2031, + "id": 3518, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2030, + "id": 3517, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 2052, - "src": "16366:20:2", + "scope": 3539, + "src": "16572:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14896,10 +14896,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2029, + "id": 3516, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "16366:7:2", + "src": "16572:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14909,54 +14909,54 @@ "visibility": "internal" } ], - "src": "16365:22:2" + "src": "16571:22:6" }, "payable": false, "returnParameters": { - "id": 2032, + "id": 3519, "nodeType": "ParameterList", "parameters": [], - "src": "16396:0:2" + "src": "16602:0:6" }, - "scope": 2106, - "src": "16336:200:2", + "scope": 3593, + "src": "16542:203:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "private" }, { "body": { - "id": 2104, + "id": 3591, "nodeType": "Block", - "src": "16750:579:2", + "src": "16959:589:6", "statements": [ { "assignments": [ - 2058 + 3545 ], "declarations": [ { "constant": false, - "id": 2058, + "id": 3545, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 2105, - "src": "16756:23:2", + "scope": 3592, + "src": "16965:23:6", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" }, "typeName": { "contractScope": null, - "id": 2057, + "id": 3544, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1117, - "src": "16756:7:2", + "referencedDeclaration": 2604, + "src": "16965:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" } }, @@ -14964,31 +14964,31 @@ "visibility": "internal" } ], - "id": 2062, + "id": 3549, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2059, + "id": 3546, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "16782:8:2", + "referencedDeclaration": 2627, + "src": "16991:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 2061, + "id": 3548, "indexExpression": { "argumentTypes": null, - "id": 2060, + "id": 3547, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2054, - "src": "16791:12:2", + "referencedDeclaration": 3541, + "src": "17000:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -14999,62 +14999,62 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "16782:22:2", + "src": "16991:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "16756:48:2" + "src": "16965:48:6" }, { "condition": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2063, + "id": 3550, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2058, - "src": "16890:7:2", + "referencedDeclaration": 3545, + "src": "17099:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 2064, + "id": 3551, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "whitelisted", "nodeType": "MemberAccess", - "referencedDeclaration": 1110, - "src": "16890:19:2", + "referencedDeclaration": 2597, + "src": "17099:19:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 2074, + "id": 3561, "nodeType": "Block", - "src": "16961:48:2", + "src": "17175:53:6", "statements": [ { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2071, + "id": 3558, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2054, - "src": "16989:12:2", + "referencedDeclaration": 3541, + "src": "17208:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15068,18 +15068,18 @@ "typeString": "bytes32" } ], - "id": 2070, + "id": 3557, "name": "_ApplicationRemoved", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1063, - "src": "16969:19:2", + "referencedDeclaration": 2550, + "src": "17188:19:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 2072, + "id": 3559, "isConstant": false, "isLValue": false, "isPure": false, @@ -15087,38 +15087,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16969:33:2", + "src": "17188:33:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2073, - "nodeType": "ExpressionStatement", - "src": "16969:33:2" + "id": 3560, + "nodeType": "EmitStatement", + "src": "17183:38:6" } ] }, - "id": 2075, + "id": 3562, "nodeType": "IfStatement", - "src": "16886:123:2", + "src": "17095:133:6", "trueBody": { - "id": 2069, + "id": 3556, "nodeType": "Block", - "src": "16911:44:2", + "src": "17120:49:6", "statements": [ { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2066, + "id": 3553, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2054, - "src": "16935:12:2", + "referencedDeclaration": 3541, + "src": "17149:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15132,18 +15132,18 @@ "typeString": "bytes32" } ], - "id": 2065, + "id": 3552, "name": "_ListingRemoved", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1067, - "src": "16919:15:2", + "referencedDeclaration": 2554, + "src": "17133:15:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 2067, + "id": 3554, "isConstant": false, "isLValue": false, "isPure": false, @@ -15151,31 +15151,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16919:29:2", + "src": "17133:29:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2068, - "nodeType": "ExpressionStatement", - "src": "16919:29:2" + "id": 3555, + "nodeType": "EmitStatement", + "src": "17128:34:6" } ] } }, { "assignments": [ - 2077 + 3564 ], "declarations": [ { "constant": false, - "id": 2077, + "id": 3564, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 2105, - "src": "17058:13:2", + "scope": 3592, + "src": "17277:13:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15183,10 +15183,10 @@ "typeString": "address" }, "typeName": { - "id": 2076, + "id": 3563, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17058:7:2", + "src": "17277:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15196,51 +15196,51 @@ "visibility": "internal" } ], - "id": 2080, + "id": 3567, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2078, + "id": 3565, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2058, - "src": "17074:7:2", + "referencedDeclaration": 3545, + "src": "17293:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 2079, + "id": 3566, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1112, - "src": "17074:13:2", + "referencedDeclaration": 2599, + "src": "17293:13:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "VariableDeclarationStatement", - "src": "17058:29:2" + "src": "17277:29:6" }, { "assignments": [ - 2082 + 3569 ], "declarations": [ { "constant": false, - "id": 2082, + "id": 3569, "name": "unstakedDeposit", "nodeType": "VariableDeclaration", - "scope": 2105, - "src": "17093:20:2", + "scope": 3592, + "src": "17312:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15248,10 +15248,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2081, + "id": 3568, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "17093:4:2", + "src": "17312:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15261,43 +15261,43 @@ "visibility": "internal" } ], - "id": 2085, + "id": 3572, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2083, + "id": 3570, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2058, - "src": "17116:7:2", + "referencedDeclaration": 3545, + "src": "17335:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 2084, + "id": 3571, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "17116:23:2", + "referencedDeclaration": 2601, + "src": "17335:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "17093:46:2" + "src": "17312:46:6" }, { "expression": { "argumentTypes": null, - "id": 2089, + "id": 3576, "isConstant": false, "isLValue": false, "isPure": false, @@ -15305,31 +15305,31 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "17145:29:2", + "src": "17364:29:6", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2086, + "id": 3573, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "17152:8:2", + "referencedDeclaration": 2627, + "src": "17371:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 2088, + "id": 3575, "indexExpression": { "argumentTypes": null, - "id": 2087, + "id": 3574, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2054, - "src": "17161:12:2", + "referencedDeclaration": 3541, + "src": "17380:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15340,9 +15340,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "17152:22:2", + "src": "17371:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, @@ -15351,9 +15351,9 @@ "typeString": "tuple()" } }, - "id": 2090, + "id": 3577, "nodeType": "ExpressionStatement", - "src": "17145:29:2" + "src": "17364:29:6" }, { "condition": { @@ -15362,19 +15362,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2093, + "id": 3580, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2091, + "id": 3578, "name": "unstakedDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2082, - "src": "17242:15:2", + "referencedDeclaration": 3569, + "src": "17461:15:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15385,14 +15385,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2092, + "id": 3579, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "17260:1:2", + "src": "17479:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -15400,20 +15400,20 @@ }, "value": "0" }, - "src": "17242:19:2", + "src": "17461:19:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 2103, + "id": 3590, "nodeType": "IfStatement", - "src": "17238:87:2", + "src": "17457:87:6", "trueBody": { - "id": 2102, + "id": 3589, "nodeType": "Block", - "src": "17263:62:2", + "src": "17482:62:6", "statements": [ { "expression": { @@ -15424,12 +15424,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2097, + "id": 3584, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2077, - "src": "17294:5:2", + "referencedDeclaration": 3564, + "src": "17513:5:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15437,12 +15437,12 @@ }, { "argumentTypes": null, - "id": 2098, + "id": 3585, "name": "unstakedDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2082, - "src": "17301:15:2", + "referencedDeclaration": 3569, + "src": "17520:15:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15462,32 +15462,32 @@ ], "expression": { "argumentTypes": null, - "id": 2095, + "id": 3582, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "17279:5:2", + "referencedDeclaration": 2629, + "src": "17498:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 2096, + "id": 3583, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "17279:14:2", + "referencedDeclaration": 431, + "src": "17498:14:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 2099, + "id": 3586, "isConstant": false, "isLValue": false, "isPure": false, @@ -15495,7 +15495,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "17279:38:2", + "src": "17498:38:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15509,21 +15509,21 @@ "typeString": "bool" } ], - "id": 2094, + "id": 3581, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "17271:7:2", + "referencedDeclaration": 3705, + "src": "17490:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2100, + "id": 3587, "isConstant": false, "isLValue": false, "isPure": false, @@ -15531,15 +15531,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "17271:47:2", + "src": "17490:47:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2101, + "id": 3588, "nodeType": "ExpressionStatement", - "src": "17271:47:2" + "src": "17490:47:6" } ] } @@ -15547,7 +15547,7 @@ ] }, "documentation": "@dev Deletes a listingHash from the whitelist and transfers tokens back to owner\n@param _listingHash The listing hash to delete", - "id": 2105, + "id": 3592, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -15555,16 +15555,16 @@ "name": "resetListing", "nodeType": "FunctionDefinition", "parameters": { - "id": 2055, + "id": 3542, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2054, + "id": 3541, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 2105, - "src": "16720:20:2", + "scope": 3592, + "src": "16929:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15572,10 +15572,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2053, + "id": 3540, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "16720:7:2", + "src": "16929:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15585,89 +15585,89 @@ "visibility": "internal" } ], - "src": "16719:22:2" + "src": "16928:22:6" }, "payable": false, "returnParameters": { - "id": 2056, + "id": 3543, "nodeType": "ParameterList", "parameters": [], - "src": "16750:0:2" + "src": "16959:0:6" }, - "scope": 2106, - "src": "16698:631:2", + "scope": 3593, + "src": "16907:641:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "private" } ], - "scope": 2107, - "src": "171:17160:2" + "scope": 3594, + "src": "131:17419:6" } ], - "src": "0:17332:2" + "src": "0:17551:6" }, "legacyAST": { - "absolutePath": "/home/rbharath/computable/contracts/Registry.sol", + "absolutePath": "/home/rob/Github/computable/contracts/Registry.sol", "exportedSymbols": { "Registry": [ - 2106 + 3593 ] }, - "id": 2107, + "id": 3594, "nodeType": "SourceUnit", "nodes": [ { - "id": 1005, + "id": 2492, "literals": [ "solidity", "0.4", ".24" ], "nodeType": "PragmaDirective", - "src": "0:23:2" + "src": "0:23:6" }, { - "absolutePath": "tokens/eip20/EIP20Interface.sol", - "file": "tokens/eip20/EIP20Interface.sol", - "id": 1006, + "absolutePath": "/home/rob/Github/computable/contracts/ERC20.sol", + "file": "./ERC20.sol", + "id": 2493, "nodeType": "ImportDirective", - "scope": 2107, - "sourceUnit": 3783, - "src": "25:41:2", + "scope": 3594, + "sourceUnit": 409, + "src": "25:21:6", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "/home/rbharath/computable/contracts/Parameterizer.sol", + "absolutePath": "/home/rob/Github/computable/contracts/Parameterizer.sol", "file": "./Parameterizer.sol", - "id": 1007, + "id": 2494, "nodeType": "ImportDirective", - "scope": 2107, - "sourceUnit": 1004, - "src": "67:29:2", + "scope": 3594, + "sourceUnit": 2491, + "src": "47:29:6", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "plcrvoting/PLCRVoting.sol", - "file": "plcrvoting/PLCRVoting.sol", - "id": 1008, + "absolutePath": "/home/rob/Github/computable/contracts/PLCRVoting.sol", + "file": "./PLCRVoting.sol", + "id": 2495, "nodeType": "ImportDirective", - "scope": 2107, - "sourceUnit": 3489, - "src": "97:35:2", + "scope": 3594, + "sourceUnit": 1472, + "src": "77:26:6", "symbolAliases": [], "unitAlias": "" }, { - "absolutePath": "zeppelin/math/SafeMath.sol", - "file": "zeppelin/math/SafeMath.sol", - "id": 1009, + "absolutePath": "/home/rob/Github/computable/contracts/SafeMath.sol", + "file": "./SafeMath.sol", + "id": 2496, "nodeType": "ImportDirective", - "scope": 2107, - "sourceUnit": 3878, - "src": "133:36:2", + "scope": 3594, + "sourceUnit": 3688, + "src": "104:24:6", "symbolAliases": [], "unitAlias": "" }, @@ -15677,9 +15677,9 @@ "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 2106, + "id": 3593, "linearizedBaseContracts": [ - 2106 + 3593 ], "name": "Registry", "nodeType": "ContractDefinition", @@ -15687,21 +15687,21 @@ { "anonymous": false, "documentation": null, - "id": 1021, + "id": 2508, "name": "_Application", "nodeType": "EventDefinition", "parameters": { - "id": 1020, + "id": 2507, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1011, + "id": 2498, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1021, - "src": "250:27:2", + "scope": 2508, + "src": "210:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15709,10 +15709,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1010, + "id": 2497, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "250:7:2", + "src": "210:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15723,12 +15723,12 @@ }, { "constant": false, - "id": 1013, + "id": 2500, "indexed": false, "name": "deposit", "nodeType": "VariableDeclaration", - "scope": 1021, - "src": "279:12:2", + "scope": 2508, + "src": "239:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15736,10 +15736,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1012, + "id": 2499, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "279:4:2", + "src": "239:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15750,12 +15750,12 @@ }, { "constant": false, - "id": 1015, + "id": 2502, "indexed": false, "name": "appEndDate", "nodeType": "VariableDeclaration", - "scope": 1021, - "src": "293:15:2", + "scope": 2508, + "src": "253:15:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15763,10 +15763,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1014, + "id": 2501, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "293:4:2", + "src": "253:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15777,12 +15777,12 @@ }, { "constant": false, - "id": 1017, + "id": 2504, "indexed": false, "name": "data", "nodeType": "VariableDeclaration", - "scope": 1021, - "src": "310:11:2", + "scope": 2508, + "src": "270:11:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15790,10 +15790,10 @@ "typeString": "string" }, "typeName": { - "id": 1016, + "id": 2503, "name": "string", "nodeType": "ElementaryTypeName", - "src": "310:6:2", + "src": "270:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -15804,12 +15804,12 @@ }, { "constant": false, - "id": 1019, + "id": 2506, "indexed": true, "name": "applicant", "nodeType": "VariableDeclaration", - "scope": 1021, - "src": "323:25:2", + "scope": 2508, + "src": "283:25:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15817,10 +15817,10 @@ "typeString": "address" }, "typeName": { - "id": 1018, + "id": 2505, "name": "address", "nodeType": "ElementaryTypeName", - "src": "323:7:2", + "src": "283:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15830,28 +15830,28 @@ "visibility": "internal" } ], - "src": "249:100:2" + "src": "209:100:6" }, - "src": "231:119:2" + "src": "191:119:6" }, { "anonymous": false, "documentation": null, - "id": 1035, + "id": 2522, "name": "_Challenge", "nodeType": "EventDefinition", "parameters": { - "id": 1034, + "id": 2521, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1023, + "id": 2510, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1035, - "src": "370:27:2", + "scope": 2522, + "src": "330:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15859,10 +15859,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1022, + "id": 2509, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "370:7:2", + "src": "330:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -15873,12 +15873,12 @@ }, { "constant": false, - "id": 1025, + "id": 2512, "indexed": false, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1035, - "src": "399:16:2", + "scope": 2522, + "src": "359:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15886,10 +15886,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1024, + "id": 2511, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "399:4:2", + "src": "359:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15900,12 +15900,12 @@ }, { "constant": false, - "id": 1027, + "id": 2514, "indexed": false, "name": "data", "nodeType": "VariableDeclaration", - "scope": 1035, - "src": "417:11:2", + "scope": 2522, + "src": "377:11:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15913,10 +15913,10 @@ "typeString": "string" }, "typeName": { - "id": 1026, + "id": 2513, "name": "string", "nodeType": "ElementaryTypeName", - "src": "417:6:2", + "src": "377:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -15927,12 +15927,12 @@ }, { "constant": false, - "id": 1029, + "id": 2516, "indexed": false, "name": "commitEndDate", "nodeType": "VariableDeclaration", - "scope": 1035, - "src": "430:18:2", + "scope": 2522, + "src": "390:18:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15940,10 +15940,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1028, + "id": 2515, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "430:4:2", + "src": "390:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15954,12 +15954,12 @@ }, { "constant": false, - "id": 1031, + "id": 2518, "indexed": false, "name": "revealEndDate", "nodeType": "VariableDeclaration", - "scope": 1035, - "src": "450:18:2", + "scope": 2522, + "src": "410:18:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15967,10 +15967,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1030, + "id": 2517, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "450:4:2", + "src": "410:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15981,12 +15981,12 @@ }, { "constant": false, - "id": 1033, + "id": 2520, "indexed": true, "name": "challenger", "nodeType": "VariableDeclaration", - "scope": 1035, - "src": "470:26:2", + "scope": 2522, + "src": "430:26:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15994,10 +15994,10 @@ "typeString": "address" }, "typeName": { - "id": 1032, + "id": 2519, "name": "address", "nodeType": "ElementaryTypeName", - "src": "470:7:2", + "src": "430:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16007,28 +16007,28 @@ "visibility": "internal" } ], - "src": "369:128:2" + "src": "329:128:6" }, - "src": "353:145:2" + "src": "313:145:6" }, { "anonymous": false, "documentation": null, - "id": 1045, + "id": 2532, "name": "_Deposit", "nodeType": "EventDefinition", "parameters": { - "id": 1044, + "id": 2531, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1037, + "id": 2524, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1045, - "src": "516:27:2", + "scope": 2532, + "src": "476:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16036,10 +16036,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1036, + "id": 2523, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "516:7:2", + "src": "476:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -16050,12 +16050,12 @@ }, { "constant": false, - "id": 1039, + "id": 2526, "indexed": false, "name": "added", "nodeType": "VariableDeclaration", - "scope": 1045, - "src": "545:10:2", + "scope": 2532, + "src": "505:10:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16063,10 +16063,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1038, + "id": 2525, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "545:4:2", + "src": "505:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16077,12 +16077,12 @@ }, { "constant": false, - "id": 1041, + "id": 2528, "indexed": false, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 1045, - "src": "557:13:2", + "scope": 2532, + "src": "517:13:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16090,10 +16090,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1040, + "id": 2527, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "557:4:2", + "src": "517:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16104,12 +16104,12 @@ }, { "constant": false, - "id": 1043, + "id": 2530, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1045, - "src": "572:21:2", + "scope": 2532, + "src": "532:21:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16117,10 +16117,10 @@ "typeString": "address" }, "typeName": { - "id": 1042, + "id": 2529, "name": "address", "nodeType": "ElementaryTypeName", - "src": "572:7:2", + "src": "532:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16130,28 +16130,28 @@ "visibility": "internal" } ], - "src": "515:79:2" + "src": "475:79:6" }, - "src": "501:94:2" + "src": "461:94:6" }, { "anonymous": false, "documentation": null, - "id": 1055, + "id": 2542, "name": "_Withdrawal", "nodeType": "EventDefinition", "parameters": { - "id": 1054, + "id": 2541, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1047, + "id": 2534, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1055, - "src": "616:27:2", + "scope": 2542, + "src": "576:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16159,10 +16159,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1046, + "id": 2533, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "616:7:2", + "src": "576:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -16173,12 +16173,12 @@ }, { "constant": false, - "id": 1049, + "id": 2536, "indexed": false, "name": "withdrew", "nodeType": "VariableDeclaration", - "scope": 1055, - "src": "645:13:2", + "scope": 2542, + "src": "605:13:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16186,10 +16186,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1048, + "id": 2535, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "645:4:2", + "src": "605:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16200,12 +16200,12 @@ }, { "constant": false, - "id": 1051, + "id": 2538, "indexed": false, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 1055, - "src": "660:13:2", + "scope": 2542, + "src": "620:13:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16213,10 +16213,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1050, + "id": 2537, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "660:4:2", + "src": "620:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16227,12 +16227,12 @@ }, { "constant": false, - "id": 1053, + "id": 2540, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1055, - "src": "675:21:2", + "scope": 2542, + "src": "635:21:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16240,10 +16240,10 @@ "typeString": "address" }, "typeName": { - "id": 1052, + "id": 2539, "name": "address", "nodeType": "ElementaryTypeName", - "src": "675:7:2", + "src": "635:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16253,28 +16253,28 @@ "visibility": "internal" } ], - "src": "615:82:2" + "src": "575:82:6" }, - "src": "598:100:2" + "src": "558:100:6" }, { "anonymous": false, "documentation": null, - "id": 1059, + "id": 2546, "name": "_ApplicationWhitelisted", "nodeType": "EventDefinition", "parameters": { - "id": 1058, + "id": 2545, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1057, + "id": 2544, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1059, - "src": "731:27:2", + "scope": 2546, + "src": "691:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16282,10 +16282,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1056, + "id": 2543, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "731:7:2", + "src": "691:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -16295,28 +16295,28 @@ "visibility": "internal" } ], - "src": "730:29:2" + "src": "690:29:6" }, - "src": "701:59:2" + "src": "661:59:6" }, { "anonymous": false, "documentation": null, - "id": 1063, + "id": 2550, "name": "_ApplicationRemoved", "nodeType": "EventDefinition", "parameters": { - "id": 1062, + "id": 2549, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1061, + "id": 2548, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1063, - "src": "789:27:2", + "scope": 2550, + "src": "749:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16324,10 +16324,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1060, + "id": 2547, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "789:7:2", + "src": "749:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -16337,28 +16337,28 @@ "visibility": "internal" } ], - "src": "788:29:2" + "src": "748:29:6" }, - "src": "763:55:2" + "src": "723:55:6" }, { "anonymous": false, "documentation": null, - "id": 1067, + "id": 2554, "name": "_ListingRemoved", "nodeType": "EventDefinition", "parameters": { - "id": 1066, + "id": 2553, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1065, + "id": 2552, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1067, - "src": "843:27:2", + "scope": 2554, + "src": "803:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16366,10 +16366,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1064, + "id": 2551, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "843:7:2", + "src": "803:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -16379,28 +16379,28 @@ "visibility": "internal" } ], - "src": "842:29:2" + "src": "802:29:6" }, - "src": "821:51:2" + "src": "781:51:6" }, { "anonymous": false, "documentation": null, - "id": 1071, + "id": 2558, "name": "_ListingWithdrawn", "nodeType": "EventDefinition", "parameters": { - "id": 1070, + "id": 2557, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1069, + "id": 2556, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1071, - "src": "899:27:2", + "scope": 2558, + "src": "859:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16408,10 +16408,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1068, + "id": 2555, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "899:7:2", + "src": "859:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -16421,28 +16421,28 @@ "visibility": "internal" } ], - "src": "898:29:2" + "src": "858:29:6" }, - "src": "875:53:2" + "src": "835:53:6" }, { "anonymous": false, "documentation": null, - "id": 1075, + "id": 2562, "name": "_TouchAndRemoved", "nodeType": "EventDefinition", "parameters": { - "id": 1074, + "id": 2561, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1073, + "id": 2560, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1075, - "src": "954:27:2", + "scope": 2562, + "src": "914:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16450,10 +16450,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1072, + "id": 2559, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "954:7:2", + "src": "914:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -16463,28 +16463,28 @@ "visibility": "internal" } ], - "src": "953:29:2" + "src": "913:29:6" }, - "src": "931:52:2" + "src": "891:52:6" }, { "anonymous": false, "documentation": null, - "id": 1085, + "id": 2572, "name": "_ChallengeFailed", "nodeType": "EventDefinition", "parameters": { - "id": 1084, + "id": 2571, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1077, + "id": 2564, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1085, - "src": "1009:27:2", + "scope": 2572, + "src": "969:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16492,10 +16492,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1076, + "id": 2563, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1009:7:2", + "src": "969:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -16506,12 +16506,12 @@ }, { "constant": false, - "id": 1079, + "id": 2566, "indexed": true, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1085, - "src": "1038:24:2", + "scope": 2572, + "src": "998:24:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16519,10 +16519,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1078, + "id": 2565, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1038:4:2", + "src": "998:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16533,12 +16533,12 @@ }, { "constant": false, - "id": 1081, + "id": 2568, "indexed": false, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 1085, - "src": "1064:15:2", + "scope": 2572, + "src": "1024:15:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16546,10 +16546,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1080, + "id": 2567, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1064:4:2", + "src": "1024:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16560,12 +16560,12 @@ }, { "constant": false, - "id": 1083, + "id": 2570, "indexed": false, "name": "totalTokens", "nodeType": "VariableDeclaration", - "scope": 1085, - "src": "1081:16:2", + "scope": 2572, + "src": "1041:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16573,10 +16573,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1082, + "id": 2569, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1081:4:2", + "src": "1041:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16586,28 +16586,28 @@ "visibility": "internal" } ], - "src": "1008:90:2" + "src": "968:90:6" }, - "src": "986:113:2" + "src": "946:113:6" }, { "anonymous": false, "documentation": null, - "id": 1095, + "id": 2582, "name": "_ChallengeSucceeded", "nodeType": "EventDefinition", "parameters": { - "id": 1094, + "id": 2581, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1087, + "id": 2574, "indexed": true, "name": "listingHash", "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "1128:27:2", + "scope": 2582, + "src": "1088:27:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16615,10 +16615,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1086, + "id": 2573, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "1128:7:2", + "src": "1088:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -16629,12 +16629,12 @@ }, { "constant": false, - "id": 1089, + "id": 2576, "indexed": true, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "1157:24:2", + "scope": 2582, + "src": "1117:24:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16642,10 +16642,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1088, + "id": 2575, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1157:4:2", + "src": "1117:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16656,12 +16656,12 @@ }, { "constant": false, - "id": 1091, + "id": 2578, "indexed": false, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "1183:15:2", + "scope": 2582, + "src": "1143:15:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16669,10 +16669,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1090, + "id": 2577, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1183:4:2", + "src": "1143:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16683,12 +16683,12 @@ }, { "constant": false, - "id": 1093, + "id": 2580, "indexed": false, "name": "totalTokens", "nodeType": "VariableDeclaration", - "scope": 1095, - "src": "1200:16:2", + "scope": 2582, + "src": "1160:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16696,10 +16696,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1092, + "id": 2579, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1200:4:2", + "src": "1160:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16709,28 +16709,28 @@ "visibility": "internal" } ], - "src": "1127:90:2" + "src": "1087:90:6" }, - "src": "1102:116:2" + "src": "1062:116:6" }, { "anonymous": false, "documentation": null, - "id": 1103, + "id": 2590, "name": "_RewardClaimed", "nodeType": "EventDefinition", "parameters": { - "id": 1102, + "id": 2589, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1097, + "id": 2584, "indexed": true, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1103, - "src": "1242:24:2", + "scope": 2590, + "src": "1202:24:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16738,10 +16738,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1096, + "id": 2583, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1242:4:2", + "src": "1202:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16752,12 +16752,12 @@ }, { "constant": false, - "id": 1099, + "id": 2586, "indexed": false, "name": "reward", "nodeType": "VariableDeclaration", - "scope": 1103, - "src": "1268:11:2", + "scope": 2590, + "src": "1228:11:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16765,10 +16765,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1098, + "id": 2585, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1268:4:2", + "src": "1228:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16779,12 +16779,12 @@ }, { "constant": false, - "id": 1101, + "id": 2588, "indexed": true, "name": "voter", "nodeType": "VariableDeclaration", - "scope": 1103, - "src": "1281:21:2", + "scope": 2590, + "src": "1241:21:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16792,10 +16792,10 @@ "typeString": "address" }, "typeName": { - "id": 1100, + "id": 2587, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1281:7:2", + "src": "1241:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16805,31 +16805,31 @@ "visibility": "internal" } ], - "src": "1241:62:2" + "src": "1201:62:6" }, - "src": "1221:83:2" + "src": "1181:83:6" }, { - "id": 1106, + "id": 2593, "libraryName": { "contractScope": null, - "id": 1104, + "id": 2591, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3877, - "src": "1314:8:2", + "referencedDeclaration": 3687, + "src": "1274:8:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$3877", + "typeIdentifier": "t_contract$_SafeMath_$3687", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", - "src": "1308:24:2", + "src": "1268:24:6", "typeName": { - "id": 1105, + "id": 2592, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1327:4:2", + "src": "1287:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16838,15 +16838,15 @@ }, { "canonicalName": "Registry.Listing", - "id": 1117, + "id": 2604, "members": [ { "constant": false, - "id": 1108, + "id": 2595, "name": "applicationExpiry", "nodeType": "VariableDeclaration", - "scope": 1117, - "src": "1357:22:2", + "scope": 2604, + "src": "1317:22:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16854,10 +16854,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1107, + "id": 2594, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1357:4:2", + "src": "1317:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16868,11 +16868,11 @@ }, { "constant": false, - "id": 1110, + "id": 2597, "name": "whitelisted", "nodeType": "VariableDeclaration", - "scope": 1117, - "src": "1419:16:2", + "scope": 2604, + "src": "1379:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16880,10 +16880,10 @@ "typeString": "bool" }, "typeName": { - "id": 1109, + "id": 2596, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1419:4:2", + "src": "1379:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16894,11 +16894,11 @@ }, { "constant": false, - "id": 1112, + "id": 2599, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1117, - "src": "1476:13:2", + "scope": 2604, + "src": "1436:13:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16906,10 +16906,10 @@ "typeString": "address" }, "typeName": { - "id": 1111, + "id": 2598, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1476:7:2", + "src": "1436:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16920,11 +16920,11 @@ }, { "constant": false, - "id": 1114, + "id": 2601, "name": "unstakedDeposit", "nodeType": "VariableDeclaration", - "scope": 1117, - "src": "1524:20:2", + "scope": 2604, + "src": "1484:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16932,10 +16932,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1113, + "id": 2600, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1524:4:2", + "src": "1484:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16946,11 +16946,11 @@ }, { "constant": false, - "id": 1116, + "id": 2603, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1117, - "src": "1613:16:2", + "scope": 2604, + "src": "1573:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16958,10 +16958,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1115, + "id": 2602, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1613:4:2", + "src": "1573:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16973,21 +16973,21 @@ ], "name": "Listing", "nodeType": "StructDefinition", - "scope": 2106, - "src": "1336:345:2", + "scope": 3593, + "src": "1296:345:6", "visibility": "public" }, { "canonicalName": "Registry.Challenge", - "id": 1132, + "id": 2619, "members": [ { "constant": false, - "id": 1119, + "id": 2606, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 1132, - "src": "1708:15:2", + "scope": 2619, + "src": "1668:15:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16995,10 +16995,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1118, + "id": 2605, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1708:4:2", + "src": "1668:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17009,11 +17009,11 @@ }, { "constant": false, - "id": 1121, + "id": 2608, "name": "challenger", "nodeType": "VariableDeclaration", - "scope": 1132, - "src": "1802:18:2", + "scope": 2619, + "src": "1762:18:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17021,10 +17021,10 @@ "typeString": "address" }, "typeName": { - "id": 1120, + "id": 2607, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1802:7:2", + "src": "1762:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17035,11 +17035,11 @@ }, { "constant": false, - "id": 1123, + "id": 2610, "name": "resolved", "nodeType": "VariableDeclaration", - "scope": 1132, - "src": "1852:13:2", + "scope": 2619, + "src": "1812:13:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17047,10 +17047,10 @@ "typeString": "bool" }, "typeName": { - "id": 1122, + "id": 2609, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1852:4:2", + "src": "1812:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17061,11 +17061,11 @@ }, { "constant": false, - "id": 1125, + "id": 2612, "name": "stake", "nodeType": "VariableDeclaration", - "scope": 1132, - "src": "1922:10:2", + "scope": 2619, + "src": "1882:10:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17073,10 +17073,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1124, + "id": 2611, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "1922:4:2", + "src": "1882:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17087,11 +17087,11 @@ }, { "constant": false, - "id": 1127, + "id": 2614, "name": "totalTokens", "nodeType": "VariableDeclaration", - "scope": 1132, - "src": "2013:16:2", + "scope": 2619, + "src": "1973:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17099,10 +17099,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1126, + "id": 2613, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2013:4:2", + "src": "1973:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17113,11 +17113,11 @@ }, { "constant": false, - "id": 1131, + "id": 2618, "name": "tokenClaims", "nodeType": "VariableDeclaration", - "scope": 1132, - "src": "2108:36:2", + "scope": 2619, + "src": "2068:36:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17125,28 +17125,28 @@ "typeString": "mapping(address => bool)" }, "typeName": { - "id": 1130, + "id": 2617, "keyType": { - "id": 1128, + "id": 2615, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2116:7:2", + "src": "2076:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "2108:24:2", + "src": "2068:24:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" }, "valueType": { - "id": 1129, + "id": 2616, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "2127:4:2", + "src": "2087:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17159,50 +17159,50 @@ ], "name": "Challenge", "nodeType": "StructDefinition", - "scope": 2106, - "src": "1685:518:2", + "scope": 3593, + "src": "1645:518:6", "visibility": "public" }, { "constant": false, - "id": 1136, + "id": 2623, "name": "challenges", "nodeType": "VariableDeclaration", - "scope": 2106, - "src": "2259:44:2", + "scope": 3593, + "src": "2219:44:6", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge)" }, "typeName": { - "id": 1135, + "id": 2622, "keyType": { - "id": 1133, + "id": 2620, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "2267:4:2", + "src": "2227:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "Mapping", - "src": "2259:26:2", + "src": "2219:26:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge)" }, "valueType": { "contractScope": null, - "id": 1134, + "id": 2621, "name": "Challenge", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1132, - "src": "2275:9:2", + "referencedDeclaration": 2619, + "src": "2235:9:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage_ptr", + "typeIdentifier": "t_struct$_Challenge_$2619_storage_ptr", "typeString": "struct Registry.Challenge" } } @@ -17212,44 +17212,44 @@ }, { "constant": false, - "id": 1140, + "id": 2627, "name": "listings", "nodeType": "VariableDeclaration", - "scope": 2106, - "src": "2363:43:2", + "scope": 3593, + "src": "2323:43:6", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing)" }, "typeName": { - "id": 1139, + "id": 2626, "keyType": { - "id": 1137, + "id": 2624, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "2371:7:2", + "src": "2331:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, "nodeType": "Mapping", - "src": "2363:27:2", + "src": "2323:27:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing)" }, "valueType": { "contractScope": null, - "id": 1138, + "id": 2625, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1117, - "src": "2382:7:2", + "referencedDeclaration": 2604, + "src": "2342:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" } } @@ -17259,27 +17259,27 @@ }, { "constant": false, - "id": 1142, + "id": 2629, "name": "token", "nodeType": "VariableDeclaration", - "scope": 2106, - "src": "2433:27:2", + "scope": 3593, + "src": "2393:18:6", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" }, "typeName": { "contractScope": null, - "id": 1141, - "name": "EIP20Interface", + "id": 2628, + "name": "ERC20", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3782, - "src": "2433:14:2", + "referencedDeclaration": 408, + "src": "2393:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, "value": null, @@ -17287,26 +17287,26 @@ }, { "constant": false, - "id": 1144, + "id": 2631, "name": "voting", "nodeType": "VariableDeclaration", - "scope": 2106, - "src": "2464:24:2", + "scope": 3593, + "src": "2415:24:6", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" }, "typeName": { "contractScope": null, - "id": 1143, + "id": 2630, "name": "PLCRVoting", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 3488, - "src": "2464:10:2", + "referencedDeclaration": 1471, + "src": "2415:10:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, @@ -17315,26 +17315,26 @@ }, { "constant": false, - "id": 1146, + "id": 2633, "name": "parameterizer", "nodeType": "VariableDeclaration", - "scope": 2106, - "src": "2492:34:2", + "scope": 3593, + "src": "2443:34:6", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" }, "typeName": { "contractScope": null, - "id": 1145, + "id": 2632, "name": "Parameterizer", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1003, - "src": "2492:13:2", + "referencedDeclaration": 2490, + "src": "2443:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, @@ -17343,11 +17343,11 @@ }, { "constant": false, - "id": 1148, + "id": 2635, "name": "name", "nodeType": "VariableDeclaration", - "scope": 2106, - "src": "2530:18:2", + "scope": 3593, + "src": "2481:18:6", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -17355,10 +17355,10 @@ "typeString": "string" }, "typeName": { - "id": 1147, + "id": 2634, "name": "string", "nodeType": "ElementaryTypeName", - "src": "2530:6:2", + "src": "2481:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -17369,29 +17369,29 @@ }, { "body": { - "id": 1181, + "id": 2668, "nodeType": "Block", - "src": "3036:147:2", + "src": "2981:138:6", "statements": [ { "expression": { "argumentTypes": null, - "id": 1163, + "id": 2650, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1159, + "id": 2646, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "3042:5:2", + "referencedDeclaration": 2629, + "src": "2987:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, "nodeType": "Assignment", @@ -17401,12 +17401,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1161, + "id": 2648, "name": "_tokenAddr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1150, - "src": "3065:10:2", + "referencedDeclaration": 2637, + "src": "3001:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17420,18 +17420,18 @@ "typeString": "address" } ], - "id": 1160, - "name": "EIP20Interface", + "id": 2647, + "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3782, - "src": "3050:14:2", + "referencedDeclaration": 408, + "src": "2995:5:6", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_EIP20Interface_$3782_$", - "typeString": "type(contract EIP20Interface)" + "typeIdentifier": "t_type$_t_contract$_ERC20_$408_$", + "typeString": "type(contract ERC20)" } }, - "id": 1162, + "id": 2649, "isConstant": false, "isLValue": false, "isPure": false, @@ -17439,40 +17439,40 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3050:26:2", + "src": "2995:17:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "src": "3042:34:2", + "src": "2987:25:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 1164, + "id": 2651, "nodeType": "ExpressionStatement", - "src": "3042:34:2" + "src": "2987:25:6" }, { "expression": { "argumentTypes": null, - "id": 1169, + "id": 2656, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1165, + "id": 2652, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "3082:6:2", + "referencedDeclaration": 2631, + "src": "3018:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, @@ -17483,12 +17483,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1167, + "id": 2654, "name": "_plcrAddr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1152, - "src": "3102:9:2", + "referencedDeclaration": 2639, + "src": "3038:9:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17502,18 +17502,18 @@ "typeString": "address" } ], - "id": 1166, + "id": 2653, "name": "PLCRVoting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3488, - "src": "3091:10:2", + "referencedDeclaration": 1471, + "src": "3027:10:6", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_PLCRVoting_$3488_$", + "typeIdentifier": "t_type$_t_contract$_PLCRVoting_$1471_$", "typeString": "type(contract PLCRVoting)" } }, - "id": 1168, + "id": 2655, "isConstant": false, "isLValue": false, "isPure": false, @@ -17521,40 +17521,40 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3091:21:2", + "src": "3027:21:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "src": "3082:30:2", + "src": "3018:30:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1170, + "id": 2657, "nodeType": "ExpressionStatement", - "src": "3082:30:2" + "src": "3018:30:6" }, { "expression": { "argumentTypes": null, - "id": 1175, + "id": 2662, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1171, + "id": 2658, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "3118:13:2", + "referencedDeclaration": 2633, + "src": "3054:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, @@ -17565,12 +17565,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1173, + "id": 2660, "name": "_paramsAddr", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1154, - "src": "3148:11:2", + "referencedDeclaration": 2641, + "src": "3084:11:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17584,18 +17584,18 @@ "typeString": "address" } ], - "id": 1172, + "id": 2659, "name": "Parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1003, - "src": "3134:13:2", + "referencedDeclaration": 2490, + "src": "3070:13:6", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_Parameterizer_$1003_$", + "typeIdentifier": "t_type$_t_contract$_Parameterizer_$2490_$", "typeString": "type(contract Parameterizer)" } }, - "id": 1174, + "id": 2661, "isConstant": false, "isLValue": false, "isPure": false, @@ -17603,38 +17603,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3134:26:2", + "src": "3070:26:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "src": "3118:42:2", + "src": "3054:42:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1176, + "id": 2663, "nodeType": "ExpressionStatement", - "src": "3118:42:2" + "src": "3054:42:6" }, { "expression": { "argumentTypes": null, - "id": 1179, + "id": 2666, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1177, + "id": 2664, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1148, - "src": "3166:4:2", + "referencedDeclaration": 2635, + "src": "3102:4:6", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -17644,48 +17644,48 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1178, + "id": 2665, "name": "_name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1156, - "src": "3173:5:2", + "referencedDeclaration": 2643, + "src": "3109:5:6", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "3166:12:2", + "src": "3102:12:6", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 1180, + "id": 2667, "nodeType": "ExpressionStatement", - "src": "3166:12:2" + "src": "3102:12:6" } ] }, "documentation": "@dev Contructor Sets the addresses for token, voting, and parameterizer\n@param _tokenAddr Address of the TCR's intrinsic ERC20 token\n@param _plcrAddr Address of a PLCR voting contract for the provided token\n@param _paramsAddr Address of a Parameterizer contract", - "id": 1182, + "id": 2669, "implemented": true, "isConstructor": true, "isDeclaredConst": false, "modifiers": [], - "name": "Registry", + "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 1157, + "id": 2644, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1150, + "id": 2637, "name": "_tokenAddr", "nodeType": "VariableDeclaration", - "scope": 1182, - "src": "2938:18:2", + "scope": 2669, + "src": "2883:18:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17693,10 +17693,10 @@ "typeString": "address" }, "typeName": { - "id": 1149, + "id": 2636, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2938:7:2", + "src": "2883:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17707,11 +17707,11 @@ }, { "constant": false, - "id": 1152, + "id": 2639, "name": "_plcrAddr", "nodeType": "VariableDeclaration", - "scope": 1182, - "src": "2962:17:2", + "scope": 2669, + "src": "2907:17:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17719,10 +17719,10 @@ "typeString": "address" }, "typeName": { - "id": 1151, + "id": 2638, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2962:7:2", + "src": "2907:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17733,11 +17733,11 @@ }, { "constant": false, - "id": 1154, + "id": 2641, "name": "_paramsAddr", "nodeType": "VariableDeclaration", - "scope": 1182, - "src": "2985:19:2", + "scope": 2669, + "src": "2930:19:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17745,10 +17745,10 @@ "typeString": "address" }, "typeName": { - "id": 1153, + "id": 2640, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2985:7:2", + "src": "2930:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17759,11 +17759,11 @@ }, { "constant": false, - "id": 1156, + "id": 2643, "name": "_name", "nodeType": "VariableDeclaration", - "scope": 1182, - "src": "3010:12:2", + "scope": 2669, + "src": "2955:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17771,10 +17771,10 @@ "typeString": "string" }, "typeName": { - "id": 1155, + "id": 2642, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3010:6:2", + "src": "2955:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -17784,26 +17784,26 @@ "visibility": "internal" } ], - "src": "2932:94:2" + "src": "2877:94:6" }, "payable": false, "returnParameters": { - "id": 1158, + "id": 2645, "nodeType": "ParameterList", "parameters": [], - "src": "3036:0:2" + "src": "2981:0:6" }, - "scope": 2106, - "src": "2915:268:2", + "scope": 3593, + "src": "2866:253:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1266, + "id": 2753, "nodeType": "Block", - "src": "3753:619:2", + "src": "3689:660:6", "statements": [ { "expression": { @@ -17811,7 +17811,7 @@ "arguments": [ { "argumentTypes": null, - "id": 1195, + "id": 2682, "isConstant": false, "isLValue": false, "isPure": false, @@ -17819,18 +17819,18 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "3767:28:2", + "src": "3703:28:6", "subExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1193, + "id": 2680, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1184, - "src": "3782:12:2", + "referencedDeclaration": 2671, + "src": "3718:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -17844,18 +17844,18 @@ "typeString": "bytes32" } ], - "id": 1192, + "id": 2679, "name": "isWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1797, - "src": "3768:13:2", + "referencedDeclaration": 3284, + "src": "3704:13:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1194, + "id": 2681, "isConstant": false, "isLValue": false, "isPure": false, @@ -17863,7 +17863,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3768:27:2", + "src": "3704:27:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17882,21 +17882,21 @@ "typeString": "bool" } ], - "id": 1191, + "id": 2678, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "3759:7:2", + "referencedDeclaration": 3705, + "src": "3695:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1196, + "id": 2683, "isConstant": false, "isLValue": false, "isPure": false, @@ -17904,15 +17904,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3759:37:2", + "src": "3695:37:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1197, + "id": 2684, "nodeType": "ExpressionStatement", - "src": "3759:37:2" + "src": "3695:37:6" }, { "expression": { @@ -17920,7 +17920,7 @@ "arguments": [ { "argumentTypes": null, - "id": 1202, + "id": 2689, "isConstant": false, "isLValue": false, "isPure": false, @@ -17928,18 +17928,18 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "3810:25:2", + "src": "3746:25:6", "subExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1200, + "id": 2687, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1184, - "src": "3822:12:2", + "referencedDeclaration": 2671, + "src": "3758:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -17953,18 +17953,18 @@ "typeString": "bytes32" } ], - "id": 1199, + "id": 2686, "name": "appWasMade", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1812, - "src": "3811:10:2", + "referencedDeclaration": 3299, + "src": "3747:10:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1201, + "id": 2688, "isConstant": false, "isLValue": false, "isPure": false, @@ -17972,7 +17972,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3811:24:2", + "src": "3747:24:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17991,21 +17991,21 @@ "typeString": "bool" } ], - "id": 1198, + "id": 2685, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "3802:7:2", + "referencedDeclaration": 3705, + "src": "3738:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1203, + "id": 2690, "isConstant": false, "isLValue": false, "isPure": false, @@ -18013,15 +18013,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3802:34:2", + "src": "3738:34:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1204, + "id": 2691, "nodeType": "ExpressionStatement", - "src": "3802:34:2" + "src": "3738:34:6" }, { "expression": { @@ -18033,19 +18033,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1211, + "id": 2698, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1206, + "id": 2693, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1186, - "src": "3850:7:2", + "referencedDeclaration": 2673, + "src": "3786:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18059,14 +18059,14 @@ { "argumentTypes": null, "hexValue": "6d696e4465706f736974", - "id": 1209, + "id": 2696, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "3879:12:2", + "src": "3815:12:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_1562a3cff09047061ba41141a6bb560ed15f1ca2968c821562d091212629199d", @@ -18084,32 +18084,32 @@ ], "expression": { "argumentTypes": null, - "id": 1207, + "id": 2694, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "3861:13:2", + "referencedDeclaration": 2633, + "src": "3797:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1208, + "id": 2695, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "3861:17:2", + "referencedDeclaration": 2349, + "src": "3797:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1210, + "id": 2697, "isConstant": false, "isLValue": false, "isPure": false, @@ -18117,13 +18117,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3861:31:2", + "src": "3797:31:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3850:42:2", + "src": "3786:42:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18137,21 +18137,21 @@ "typeString": "bool" } ], - "id": 1205, + "id": 2692, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "3842:7:2", + "referencedDeclaration": 3705, + "src": "3778:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1212, + "id": 2699, "isConstant": false, "isLValue": false, "isPure": false, @@ -18159,43 +18159,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3842:51:2", + "src": "3778:51:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1213, + "id": 2700, "nodeType": "ExpressionStatement", - "src": "3842:51:2" + "src": "3778:51:6" }, { "assignments": [ - 1215 + 2702 ], "declarations": [ { "constant": false, - "id": 1215, + "id": 2702, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1267, - "src": "3918:23:2", + "scope": 2754, + "src": "3854:23:6", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" }, "typeName": { "contractScope": null, - "id": 1214, + "id": 2701, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1117, - "src": "3918:7:2", + "referencedDeclaration": 2604, + "src": "3854:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" } }, @@ -18203,31 +18203,31 @@ "visibility": "internal" } ], - "id": 1219, + "id": 2706, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1216, + "id": 2703, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "3944:8:2", + "referencedDeclaration": 2627, + "src": "3880:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1218, + "id": 2705, "indexExpression": { "argumentTypes": null, - "id": 1217, + "id": 2704, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1184, - "src": "3953:12:2", + "referencedDeclaration": 2671, + "src": "3889:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -18238,19 +18238,19 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3944:22:2", + "src": "3880:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "3918:48:2" + "src": "3854:48:6" }, { "expression": { "argumentTypes": null, - "id": 1225, + "id": 2712, "isConstant": false, "isLValue": false, "isPure": false, @@ -18259,26 +18259,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1220, + "id": 2707, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1215, - "src": "3972:7:2", + "referencedDeclaration": 2702, + "src": "3908:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1222, + "id": 2709, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1112, - "src": "3972:13:2", + "referencedDeclaration": 2599, + "src": "3908:13:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18290,18 +18290,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1223, + "id": 2710, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "3988:3:2", + "referencedDeclaration": 3702, + "src": "3924:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1224, + "id": 2711, "isConstant": false, "isLValue": false, "isPure": false, @@ -18309,26 +18309,26 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3988:10:2", + "src": "3924:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "3972:26:2", + "src": "3908:26:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1226, + "id": 2713, "nodeType": "ExpressionStatement", - "src": "3972:26:2" + "src": "3908:26:6" }, { "expression": { "argumentTypes": null, - "id": 1238, + "id": 2725, "isConstant": false, "isLValue": false, "isPure": false, @@ -18337,26 +18337,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1227, + "id": 2714, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1215, - "src": "4038:7:2", + "referencedDeclaration": 2702, + "src": "3974:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1229, + "id": 2716, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "applicationExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 1108, - "src": "4038:25:2", + "referencedDeclaration": 2595, + "src": "3974:25:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18373,14 +18373,14 @@ { "argumentTypes": null, "hexValue": "6170706c7953746167654c656e", - "id": 1235, + "id": 2722, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "4104:15:2", + "src": "4040:15:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_e8c03b11eba3b2d069479ae0d3837927171e72e193c0acb726bbd53bdd5902da", @@ -18398,32 +18398,32 @@ ], "expression": { "argumentTypes": null, - "id": 1233, + "id": 2720, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "4086:13:2", + "referencedDeclaration": 2633, + "src": "4022:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1234, + "id": 2721, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "4086:17:2", + "referencedDeclaration": 2349, + "src": "4022:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1236, + "id": 2723, "isConstant": false, "isLValue": false, "isPure": false, @@ -18431,7 +18431,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4086:34:2", + "src": "4022:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18449,18 +18449,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1230, + "id": 2717, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3882, - "src": "4066:5:2", + "referencedDeclaration": 3692, + "src": "4002:5:6", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 1231, + "id": 2718, "isConstant": false, "isLValue": false, "isPure": false, @@ -18468,27 +18468,27 @@ "memberName": "timestamp", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4066:15:2", + "src": "4002:15:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1232, + "id": 2719, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 3876, - "src": "4066:19:2", + "referencedDeclaration": 3686, + "src": "4002:19:6", "typeDescriptions": { - "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", - "typeString": "function (uint256,uint256) view returns (uint256)" + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" } }, - "id": 1237, + "id": 2724, "isConstant": false, "isLValue": false, "isPure": false, @@ -18496,26 +18496,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4066:55:2", + "src": "4002:55:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4038:83:2", + "src": "3974:83:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1239, + "id": 2726, "nodeType": "ExpressionStatement", - "src": "4038:83:2" + "src": "3974:83:6" }, { "expression": { "argumentTypes": null, - "id": 1244, + "id": 2731, "isConstant": false, "isLValue": false, "isPure": false, @@ -18524,26 +18524,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1240, + "id": 2727, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1215, - "src": "4127:7:2", + "referencedDeclaration": 2702, + "src": "4063:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1242, + "id": 2729, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "4127:23:2", + "referencedDeclaration": 2601, + "src": "4063:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18553,26 +18553,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1243, + "id": 2730, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1186, - "src": "4153:7:2", + "referencedDeclaration": 2673, + "src": "4089:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4127:33:2", + "src": "4063:33:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1245, + "id": 2732, "nodeType": "ExpressionStatement", - "src": "4127:33:2" + "src": "4063:33:6" }, { "expression": { @@ -18585,26 +18585,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1249, + "id": 2736, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1215, - "src": "4249:7:2", + "referencedDeclaration": 2702, + "src": "4185:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1250, + "id": 2737, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1112, - "src": "4249:13:2", + "referencedDeclaration": 2599, + "src": "4185:13:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18612,25 +18612,25 @@ }, { "argumentTypes": null, - "id": 1251, + "id": 2738, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3921, - "src": "4264:4:2", + "referencedDeclaration": 3729, + "src": "4200:4:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$2106", + "typeIdentifier": "t_contract$_Registry_$3593", "typeString": "contract Registry" } }, { "argumentTypes": null, - "id": 1252, + "id": 2739, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1186, - "src": "4270:7:2", + "referencedDeclaration": 2673, + "src": "4206:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18644,7 +18644,7 @@ "typeString": "address" }, { - "typeIdentifier": "t_contract$_Registry_$2106", + "typeIdentifier": "t_contract$_Registry_$3593", "typeString": "contract Registry" }, { @@ -18654,32 +18654,32 @@ ], "expression": { "argumentTypes": null, - "id": 1247, + "id": 2734, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "4230:5:2", + "referencedDeclaration": 2629, + "src": "4166:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 1248, + "id": 2735, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 3747, - "src": "4230:18:2", + "referencedDeclaration": 390, + "src": "4166:18:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 1253, + "id": 2740, "isConstant": false, "isLValue": false, "isPure": false, @@ -18687,7 +18687,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4230:48:2", + "src": "4166:48:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18701,21 +18701,21 @@ "typeString": "bool" } ], - "id": 1246, + "id": 2733, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4222:7:2", + "referencedDeclaration": 3705, + "src": "4158:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1254, + "id": 2741, "isConstant": false, "isLValue": false, "isPure": false, @@ -18723,28 +18723,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4222:57:2", + "src": "4158:57:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1255, + "id": 2742, "nodeType": "ExpressionStatement", - "src": "4222:57:2" + "src": "4158:57:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1257, + "id": 2744, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1184, - "src": "4299:12:2", + "referencedDeclaration": 2671, + "src": "4247:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -18752,12 +18752,12 @@ }, { "argumentTypes": null, - "id": 1258, + "id": 2745, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1186, - "src": "4313:7:2", + "referencedDeclaration": 2673, + "src": "4267:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18767,26 +18767,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1259, + "id": 2746, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1215, - "src": "4322:7:2", + "referencedDeclaration": 2702, + "src": "4282:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1260, + "id": 2747, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "applicationExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 1108, - "src": "4322:25:2", + "referencedDeclaration": 2595, + "src": "4282:25:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18794,12 +18794,12 @@ }, { "argumentTypes": null, - "id": 1261, + "id": 2748, "name": "_data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1188, - "src": "4349:5:2", + "referencedDeclaration": 2675, + "src": "4315:5:6", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" @@ -18809,18 +18809,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1262, + "id": 2749, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4356:3:2", + "referencedDeclaration": 3702, + "src": "4328:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1263, + "id": 2750, "isConstant": false, "isLValue": false, "isPure": false, @@ -18828,7 +18828,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4356:10:2", + "src": "4328:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18858,18 +18858,18 @@ "typeString": "address" } ], - "id": 1256, + "id": 2743, "name": "_Application", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1021, - "src": "4286:12:2", + "referencedDeclaration": 2508, + "src": "4227:12:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_string_memory_ptr_$_t_address_$returns$__$", "typeString": "function (bytes32,uint256,uint256,string memory,address)" } }, - "id": 1264, + "id": 2751, "isConstant": false, "isLValue": false, "isPure": false, @@ -18877,20 +18877,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4286:81:2", + "src": "4227:117:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1265, - "nodeType": "ExpressionStatement", - "src": "4286:81:2" + "id": 2752, + "nodeType": "EmitStatement", + "src": "4222:122:6" } ] }, "documentation": "@dev Allows a user to start an application. Takes tokens from user and sets\napply stage end time.\n@param _listingHash The hash of a potential listing a user is applying to add to the registry\n@param _amount The number of ERC20 tokens a user is willing to potentially stake\n@param _data Extra data relevant to the application. Think IPFS hashes.", - "id": 1267, + "id": 2754, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -18898,16 +18898,16 @@ "name": "apply", "nodeType": "FunctionDefinition", "parameters": { - "id": 1189, + "id": 2676, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1184, + "id": 2671, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1267, - "src": "3694:20:2", + "scope": 2754, + "src": "3630:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18915,10 +18915,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1183, + "id": 2670, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "3694:7:2", + "src": "3630:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -18929,11 +18929,11 @@ }, { "constant": false, - "id": 1186, + "id": 2673, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1267, - "src": "3716:12:2", + "scope": 2754, + "src": "3652:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18941,10 +18941,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1185, + "id": 2672, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3716:4:2", + "src": "3652:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18955,11 +18955,11 @@ }, { "constant": false, - "id": 1188, + "id": 2675, "name": "_data", "nodeType": "VariableDeclaration", - "scope": 1267, - "src": "3730:12:2", + "scope": 2754, + "src": "3666:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18967,10 +18967,10 @@ "typeString": "string" }, "typeName": { - "id": 1187, + "id": 2674, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3730:6:2", + "src": "3666:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -18980,54 +18980,54 @@ "visibility": "internal" } ], - "src": "3693:50:2" + "src": "3629:50:6" }, "payable": false, "returnParameters": { - "id": 1190, + "id": 2677, "nodeType": "ParameterList", "parameters": [], - "src": "3753:0:2" + "src": "3689:0:6" }, - "scope": 2106, - "src": "3679:693:2", + "scope": 3593, + "src": "3615:734:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1313, + "id": 2800, "nodeType": "Block", - "src": "4691:278:2", + "src": "4668:313:6", "statements": [ { "assignments": [ - 1275 + 2762 ], "declarations": [ { "constant": false, - "id": 1275, + "id": 2762, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1314, - "src": "4697:23:2", + "scope": 2801, + "src": "4674:23:6", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" }, "typeName": { "contractScope": null, - "id": 1274, + "id": 2761, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1117, - "src": "4697:7:2", + "referencedDeclaration": 2604, + "src": "4674:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" } }, @@ -19035,31 +19035,31 @@ "visibility": "internal" } ], - "id": 1279, + "id": 2766, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1276, + "id": 2763, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "4723:8:2", + "referencedDeclaration": 2627, + "src": "4700:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1278, + "id": 2765, "indexExpression": { "argumentTypes": null, - "id": 1277, + "id": 2764, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1269, - "src": "4732:12:2", + "referencedDeclaration": 2756, + "src": "4709:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19070,14 +19070,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4723:22:2", + "src": "4700:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "4697:48:2" + "src": "4674:48:6" }, { "expression": { @@ -19089,7 +19089,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1285, + "id": 2772, "isConstant": false, "isLValue": false, "isPure": false, @@ -19098,26 +19098,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1281, + "id": 2768, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1275, - "src": "4760:7:2", + "referencedDeclaration": 2762, + "src": "4737:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1282, + "id": 2769, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1112, - "src": "4760:13:2", + "referencedDeclaration": 2599, + "src": "4737:13:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19129,18 +19129,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1283, + "id": 2770, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4777:3:2", + "referencedDeclaration": 3702, + "src": "4754:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1284, + "id": 2771, "isConstant": false, "isLValue": false, "isPure": false, @@ -19148,13 +19148,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4777:10:2", + "src": "4754:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4760:27:2", + "src": "4737:27:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19168,21 +19168,21 @@ "typeString": "bool" } ], - "id": 1280, + "id": 2767, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4752:7:2", + "referencedDeclaration": 3705, + "src": "4729:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1286, + "id": 2773, "isConstant": false, "isLValue": false, "isPure": false, @@ -19190,20 +19190,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4752:36:2", + "src": "4729:36:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1287, + "id": 2774, "nodeType": "ExpressionStatement", - "src": "4752:36:2" + "src": "4729:36:6" }, { "expression": { "argumentTypes": null, - "id": 1292, + "id": 2779, "isConstant": false, "isLValue": false, "isPure": false, @@ -19212,26 +19212,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1288, + "id": 2775, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1275, - "src": "4795:7:2", + "referencedDeclaration": 2762, + "src": "4772:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1290, + "id": 2777, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "4795:23:2", + "referencedDeclaration": 2601, + "src": "4772:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19241,26 +19241,26 @@ "operator": "+=", "rightHandSide": { "argumentTypes": null, - "id": 1291, + "id": 2778, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "4822:7:2", + "referencedDeclaration": 2758, + "src": "4799:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "4795:34:2", + "src": "4772:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1293, + "id": 2780, "nodeType": "ExpressionStatement", - "src": "4795:34:2" + "src": "4772:34:6" }, { "expression": { @@ -19273,18 +19273,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1297, + "id": 2784, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4862:3:2", + "referencedDeclaration": 3702, + "src": "4839:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1298, + "id": 2785, "isConstant": false, "isLValue": false, "isPure": false, @@ -19292,7 +19292,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4862:10:2", + "src": "4839:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19300,25 +19300,25 @@ }, { "argumentTypes": null, - "id": 1299, + "id": 2786, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3921, - "src": "4874:4:2", + "referencedDeclaration": 3729, + "src": "4851:4:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$2106", + "typeIdentifier": "t_contract$_Registry_$3593", "typeString": "contract Registry" } }, { "argumentTypes": null, - "id": 1300, + "id": 2787, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "4880:7:2", + "referencedDeclaration": 2758, + "src": "4857:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19332,7 +19332,7 @@ "typeString": "address" }, { - "typeIdentifier": "t_contract$_Registry_$2106", + "typeIdentifier": "t_contract$_Registry_$3593", "typeString": "contract Registry" }, { @@ -19342,32 +19342,32 @@ ], "expression": { "argumentTypes": null, - "id": 1295, + "id": 2782, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "4843:5:2", + "referencedDeclaration": 2629, + "src": "4820:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 1296, + "id": 2783, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 3747, - "src": "4843:18:2", + "referencedDeclaration": 390, + "src": "4820:18:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 1301, + "id": 2788, "isConstant": false, "isLValue": false, "isPure": false, @@ -19375,7 +19375,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4843:45:2", + "src": "4820:45:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19389,21 +19389,21 @@ "typeString": "bool" } ], - "id": 1294, + "id": 2781, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "4835:7:2", + "referencedDeclaration": 3705, + "src": "4812:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1302, + "id": 2789, "isConstant": false, "isLValue": false, "isPure": false, @@ -19411,28 +19411,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4835:54:2", + "src": "4812:54:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1303, + "id": 2790, "nodeType": "ExpressionStatement", - "src": "4835:54:2" + "src": "4812:54:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1305, + "id": 2792, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1269, - "src": "4905:12:2", + "referencedDeclaration": 2756, + "src": "4894:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19440,12 +19440,12 @@ }, { "argumentTypes": null, - "id": 1306, + "id": 2793, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "4919:7:2", + "referencedDeclaration": 2758, + "src": "4914:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19455,26 +19455,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1307, + "id": 2794, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1275, - "src": "4928:7:2", + "referencedDeclaration": 2762, + "src": "4929:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1308, + "id": 2795, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "4928:23:2", + "referencedDeclaration": 2601, + "src": "4929:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19484,18 +19484,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1309, + "id": 2796, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "4953:3:2", + "referencedDeclaration": 3702, + "src": "4960:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1310, + "id": 2797, "isConstant": false, "isLValue": false, "isPure": false, @@ -19503,7 +19503,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4953:10:2", + "src": "4960:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19529,18 +19529,18 @@ "typeString": "address" } ], - "id": 1304, + "id": 2791, "name": "_Deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1045, - "src": "4896:8:2", + "referencedDeclaration": 2532, + "src": "4878:8:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (bytes32,uint256,uint256,address)" } }, - "id": 1311, + "id": 2798, "isConstant": false, "isLValue": false, "isPure": false, @@ -19548,20 +19548,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4896:68:2", + "src": "4878:98:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1312, - "nodeType": "ExpressionStatement", - "src": "4896:68:2" + "id": 2799, + "nodeType": "EmitStatement", + "src": "4873:103:6" } ] }, "documentation": "@dev Allows the owner of a listingHash to increase their unstaked deposit.\n@param _listingHash A listingHash msg.sender is the owner of\n@param _amount The number of ERC20 tokens to increase a user's unstaked deposit", - "id": 1314, + "id": 2801, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -19569,16 +19569,16 @@ "name": "deposit", "nodeType": "FunctionDefinition", "parameters": { - "id": 1272, + "id": 2759, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1269, + "id": 2756, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1314, - "src": "4646:20:2", + "scope": 2801, + "src": "4623:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19586,10 +19586,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1268, + "id": 2755, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "4646:7:2", + "src": "4623:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19600,11 +19600,11 @@ }, { "constant": false, - "id": 1271, + "id": 2758, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1314, - "src": "4668:12:2", + "scope": 2801, + "src": "4645:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19612,10 +19612,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1270, + "id": 2757, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4668:4:2", + "src": "4645:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19625,54 +19625,54 @@ "visibility": "internal" } ], - "src": "4645:36:2" + "src": "4622:36:6" }, "payable": false, "returnParameters": { - "id": 1273, + "id": 2760, "nodeType": "ParameterList", "parameters": [], - "src": "4691:0:2" + "src": "4668:0:6" }, - "scope": 2106, - "src": "4629:340:2", + "scope": 3593, + "src": "4606:375:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1378, + "id": 2865, "nodeType": "Block", - "src": "5291:403:2", + "src": "5303:438:6", "statements": [ { "assignments": [ - 1322 + 2809 ], "declarations": [ { "constant": false, - "id": 1322, + "id": 2809, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1379, - "src": "5297:23:2", + "scope": 2866, + "src": "5309:23:6", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" }, "typeName": { "contractScope": null, - "id": 1321, + "id": 2808, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1117, - "src": "5297:7:2", + "referencedDeclaration": 2604, + "src": "5309:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" } }, @@ -19680,31 +19680,31 @@ "visibility": "internal" } ], - "id": 1326, + "id": 2813, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1323, + "id": 2810, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "5323:8:2", + "referencedDeclaration": 2627, + "src": "5335:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1325, + "id": 2812, "indexExpression": { "argumentTypes": null, - "id": 1324, + "id": 2811, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1316, - "src": "5332:12:2", + "referencedDeclaration": 2803, + "src": "5344:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -19715,14 +19715,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5323:22:2", + "src": "5335:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5297:48:2" + "src": "5309:48:6" }, { "expression": { @@ -19734,7 +19734,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1332, + "id": 2819, "isConstant": false, "isLValue": false, "isPure": false, @@ -19743,26 +19743,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1328, + "id": 2815, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1322, - "src": "5360:7:2", + "referencedDeclaration": 2809, + "src": "5372:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1329, + "id": 2816, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1112, - "src": "5360:13:2", + "referencedDeclaration": 2599, + "src": "5372:13:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19774,18 +19774,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1330, + "id": 2817, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5377:3:2", + "referencedDeclaration": 3702, + "src": "5389:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1331, + "id": 2818, "isConstant": false, "isLValue": false, "isPure": false, @@ -19793,13 +19793,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5377:10:2", + "src": "5389:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "5360:27:2", + "src": "5372:27:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19813,21 +19813,21 @@ "typeString": "bool" } ], - "id": 1327, + "id": 2814, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5352:7:2", + "referencedDeclaration": 3705, + "src": "5364:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1333, + "id": 2820, "isConstant": false, "isLValue": false, "isPure": false, @@ -19835,15 +19835,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5352:36:2", + "src": "5364:36:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1334, + "id": 2821, "nodeType": "ExpressionStatement", - "src": "5352:36:2" + "src": "5364:36:6" }, { "expression": { @@ -19855,19 +19855,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1339, + "id": 2826, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1336, + "id": 2823, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1318, - "src": "5402:7:2", + "referencedDeclaration": 2805, + "src": "5414:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19879,32 +19879,32 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1337, + "id": 2824, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1322, - "src": "5413:7:2", + "referencedDeclaration": 2809, + "src": "5425:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1338, + "id": 2825, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "5413:23:2", + "referencedDeclaration": 2601, + "src": "5425:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5402:34:2", + "src": "5414:34:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19918,21 +19918,21 @@ "typeString": "bool" } ], - "id": 1335, + "id": 2822, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5394:7:2", + "referencedDeclaration": 3705, + "src": "5406:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1340, + "id": 2827, "isConstant": false, "isLValue": false, "isPure": false, @@ -19940,15 +19940,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5394:43:2", + "src": "5406:43:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1341, + "id": 2828, "nodeType": "ExpressionStatement", - "src": "5394:43:2" + "src": "5406:43:6" }, { "expression": { @@ -19960,7 +19960,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1351, + "id": 2838, "isConstant": false, "isLValue": false, "isPure": false, @@ -19971,7 +19971,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1346, + "id": 2833, "isConstant": false, "isLValue": false, "isPure": false, @@ -19980,26 +19980,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1343, + "id": 2830, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1322, - "src": "5451:7:2", + "referencedDeclaration": 2809, + "src": "5463:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1344, + "id": 2831, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "5451:23:2", + "referencedDeclaration": 2601, + "src": "5463:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20009,18 +20009,18 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 1345, + "id": 2832, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1318, - "src": "5477:7:2", + "referencedDeclaration": 2805, + "src": "5489:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5451:33:2", + "src": "5463:33:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20034,14 +20034,14 @@ { "argumentTypes": null, "hexValue": "6d696e4465706f736974", - "id": 1349, + "id": 2836, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "5506:12:2", + "src": "5518:12:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_1562a3cff09047061ba41141a6bb560ed15f1ca2968c821562d091212629199d", @@ -20059,32 +20059,32 @@ ], "expression": { "argumentTypes": null, - "id": 1347, + "id": 2834, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "5488:13:2", + "referencedDeclaration": 2633, + "src": "5500:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1348, + "id": 2835, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "5488:17:2", + "referencedDeclaration": 2349, + "src": "5500:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1350, + "id": 2837, "isConstant": false, "isLValue": false, "isPure": false, @@ -20092,13 +20092,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5488:31:2", + "src": "5500:31:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5451:68:2", + "src": "5463:68:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20112,21 +20112,21 @@ "typeString": "bool" } ], - "id": 1342, + "id": 2829, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5443:7:2", + "referencedDeclaration": 3705, + "src": "5455:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1352, + "id": 2839, "isConstant": false, "isLValue": false, "isPure": false, @@ -20134,20 +20134,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5443:77:2", + "src": "5455:77:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1353, + "id": 2840, "nodeType": "ExpressionStatement", - "src": "5443:77:2" + "src": "5455:77:6" }, { "expression": { "argumentTypes": null, - "id": 1358, + "id": 2845, "isConstant": false, "isLValue": false, "isPure": false, @@ -20156,26 +20156,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1354, + "id": 2841, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1322, - "src": "5527:7:2", + "referencedDeclaration": 2809, + "src": "5539:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1356, + "id": 2843, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "5527:23:2", + "referencedDeclaration": 2601, + "src": "5539:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20185,26 +20185,26 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 1357, + "id": 2844, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1318, - "src": "5554:7:2", + "referencedDeclaration": 2805, + "src": "5566:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "5527:34:2", + "src": "5539:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1359, + "id": 2846, "nodeType": "ExpressionStatement", - "src": "5527:34:2" + "src": "5539:34:6" }, { "expression": { @@ -20217,18 +20217,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1363, + "id": 2850, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5590:3:2", + "referencedDeclaration": 3702, + "src": "5602:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1364, + "id": 2851, "isConstant": false, "isLValue": false, "isPure": false, @@ -20236,7 +20236,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5590:10:2", + "src": "5602:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20244,12 +20244,12 @@ }, { "argumentTypes": null, - "id": 1365, + "id": 2852, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1318, - "src": "5602:7:2", + "referencedDeclaration": 2805, + "src": "5614:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20269,32 +20269,32 @@ ], "expression": { "argumentTypes": null, - "id": 1361, + "id": 2848, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "5575:5:2", + "referencedDeclaration": 2629, + "src": "5587:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 1362, + "id": 2849, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "5575:14:2", + "referencedDeclaration": 431, + "src": "5587:14:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 1366, + "id": 2853, "isConstant": false, "isLValue": false, "isPure": false, @@ -20302,7 +20302,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5575:35:2", + "src": "5587:35:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20316,21 +20316,21 @@ "typeString": "bool" } ], - "id": 1360, + "id": 2847, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "5567:7:2", + "referencedDeclaration": 3705, + "src": "5579:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1367, + "id": 2854, "isConstant": false, "isLValue": false, "isPure": false, @@ -20338,28 +20338,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5567:44:2", + "src": "5579:44:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1368, + "id": 2855, "nodeType": "ExpressionStatement", - "src": "5567:44:2" + "src": "5579:44:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1370, + "id": 2857, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1316, - "src": "5630:12:2", + "referencedDeclaration": 2803, + "src": "5654:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -20367,12 +20367,12 @@ }, { "argumentTypes": null, - "id": 1371, + "id": 2858, "name": "_amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1318, - "src": "5644:7:2", + "referencedDeclaration": 2805, + "src": "5674:7:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20382,26 +20382,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1372, + "id": 2859, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1322, - "src": "5653:7:2", + "referencedDeclaration": 2809, + "src": "5689:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1373, + "id": 2860, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "5653:23:2", + "referencedDeclaration": 2601, + "src": "5689:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20411,18 +20411,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1374, + "id": 2861, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "5678:3:2", + "referencedDeclaration": 3702, + "src": "5720:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1375, + "id": 2862, "isConstant": false, "isLValue": false, "isPure": false, @@ -20430,7 +20430,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5678:10:2", + "src": "5720:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20456,18 +20456,18 @@ "typeString": "address" } ], - "id": 1369, + "id": 2856, "name": "_Withdrawal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1055, - "src": "5618:11:2", + "referencedDeclaration": 2542, + "src": "5635:11:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (bytes32,uint256,uint256,address)" } }, - "id": 1376, + "id": 2863, "isConstant": false, "isLValue": false, "isPure": false, @@ -20475,20 +20475,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5618:71:2", + "src": "5635:101:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1377, - "nodeType": "ExpressionStatement", - "src": "5618:71:2" + "id": 2864, + "nodeType": "EmitStatement", + "src": "5630:106:6" } ] }, "documentation": "@dev Allows the owner of a listingHash to decrease their unstaked deposit.\n@param _listingHash A listingHash msg.sender is the owner of.\n@param _amount The number of ERC20 tokens to withdraw from the unstaked deposit.", - "id": 1379, + "id": 2866, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -20496,16 +20496,16 @@ "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 1319, + "id": 2806, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1316, + "id": 2803, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1379, - "src": "5246:20:2", + "scope": 2866, + "src": "5258:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20513,10 +20513,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1315, + "id": 2802, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5246:7:2", + "src": "5258:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -20527,11 +20527,11 @@ }, { "constant": false, - "id": 1318, + "id": 2805, "name": "_amount", "nodeType": "VariableDeclaration", - "scope": 1379, - "src": "5268:12:2", + "scope": 2866, + "src": "5280:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20539,10 +20539,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1317, + "id": 2804, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "5268:4:2", + "src": "5280:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20552,54 +20552,54 @@ "visibility": "internal" } ], - "src": "5245:36:2" + "src": "5257:36:6" }, "payable": false, "returnParameters": { - "id": 1320, + "id": 2807, "nodeType": "ParameterList", "parameters": [], - "src": "5291:0:2" + "src": "5303:0:6" }, - "scope": 2106, - "src": "5228:466:2", + "scope": 3593, + "src": "5240:501:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1425, + "id": 2912, "nodeType": "Block", - "src": "5992:384:2", + "src": "6039:389:6", "statements": [ { "assignments": [ - 1385 + 2872 ], "declarations": [ { "constant": false, - "id": 1385, + "id": 2872, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1426, - "src": "5998:23:2", + "scope": 2913, + "src": "6045:23:6", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" }, "typeName": { "contractScope": null, - "id": 1384, + "id": 2871, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1117, - "src": "5998:7:2", + "referencedDeclaration": 2604, + "src": "6045:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" } }, @@ -20607,31 +20607,31 @@ "visibility": "internal" } ], - "id": 1389, + "id": 2876, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1386, + "id": 2873, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "6024:8:2", + "referencedDeclaration": 2627, + "src": "6071:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1388, + "id": 2875, "indexExpression": { "argumentTypes": null, - "id": 1387, + "id": 2874, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "6033:12:2", + "referencedDeclaration": 2868, + "src": "6080:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -20642,14 +20642,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6024:22:2", + "src": "6071:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5998:48:2" + "src": "6045:48:6" }, { "expression": { @@ -20661,7 +20661,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 1395, + "id": 2882, "isConstant": false, "isLValue": false, "isPure": false, @@ -20670,18 +20670,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1391, + "id": 2878, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "6061:3:2", + "referencedDeclaration": 3702, + "src": "6108:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1392, + "id": 2879, "isConstant": false, "isLValue": false, "isPure": false, @@ -20689,7 +20689,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6061:10:2", + "src": "6108:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20701,32 +20701,32 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1393, + "id": 2880, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1385, - "src": "6075:7:2", + "referencedDeclaration": 2872, + "src": "6122:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1394, + "id": 2881, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1112, - "src": "6075:13:2", + "referencedDeclaration": 2599, + "src": "6122:13:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6061:27:2", + "src": "6108:27:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20740,21 +20740,21 @@ "typeString": "bool" } ], - "id": 1390, + "id": 2877, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "6053:7:2", + "referencedDeclaration": 3705, + "src": "6100:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1396, + "id": 2883, "isConstant": false, "isLValue": false, "isPure": false, @@ -20762,15 +20762,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6053:36:2", + "src": "6100:36:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1397, + "id": 2884, "nodeType": "ExpressionStatement", - "src": "6053:36:2" + "src": "6100:36:6" }, { "expression": { @@ -20781,12 +20781,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1400, + "id": 2887, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "6117:12:2", + "referencedDeclaration": 2868, + "src": "6164:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -20800,18 +20800,18 @@ "typeString": "bytes32" } ], - "id": 1399, + "id": 2886, "name": "isWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1797, - "src": "6103:13:2", + "referencedDeclaration": 3284, + "src": "6150:13:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1401, + "id": 2888, "isConstant": false, "isLValue": false, "isPure": false, @@ -20819,7 +20819,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6103:27:2", + "src": "6150:27:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20833,21 +20833,21 @@ "typeString": "bool" } ], - "id": 1398, + "id": 2885, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "6095:7:2", + "referencedDeclaration": 3705, + "src": "6142:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1402, + "id": 2889, "isConstant": false, "isLValue": false, "isPure": false, @@ -20855,15 +20855,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6095:36:2", + "src": "6142:36:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1403, + "id": 2890, "nodeType": "ExpressionStatement", - "src": "6095:36:2" + "src": "6142:36:6" }, { "expression": { @@ -20875,7 +20875,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1414, + "id": 2901, "isConstant": false, "isLValue": false, "isPure": false, @@ -20886,7 +20886,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1408, + "id": 2895, "isConstant": false, "isLValue": false, "isPure": false, @@ -20895,26 +20895,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1405, + "id": 2892, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1385, - "src": "6190:7:2", + "referencedDeclaration": 2872, + "src": "6237:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1406, + "id": 2893, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "6190:19:2", + "referencedDeclaration": 2603, + "src": "6237:19:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20925,14 +20925,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1407, + "id": 2894, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6213:1:2", + "src": "6260:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -20940,7 +20940,7 @@ }, "value": "0" }, - "src": "6190:24:2", + "src": "6237:24:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20954,42 +20954,42 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1409, + "id": 2896, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "6218:10:2", + "referencedDeclaration": 2623, + "src": "6265:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1412, + "id": 2899, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1410, + "id": 2897, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1385, - "src": "6229:7:2", + "referencedDeclaration": 2872, + "src": "6276:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1411, + "id": 2898, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "6229:19:2", + "referencedDeclaration": 2603, + "src": "6276:19:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21000,27 +21000,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6218:31:2", + "src": "6265:31:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1413, + "id": 2900, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 1123, - "src": "6218:40:2", + "referencedDeclaration": 2610, + "src": "6265:40:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6190:68:2", + "src": "6237:68:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21034,21 +21034,21 @@ "typeString": "bool" } ], - "id": 1404, + "id": 2891, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "6182:7:2", + "referencedDeclaration": 3705, + "src": "6229:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1415, + "id": 2902, "isConstant": false, "isLValue": false, "isPure": false, @@ -21056,15 +21056,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6182:77:2", + "src": "6229:77:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1416, + "id": 2903, "nodeType": "ExpressionStatement", - "src": "6182:77:2" + "src": "6229:77:6" }, { "expression": { @@ -21072,12 +21072,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1418, + "id": 2905, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "6321:12:2", + "referencedDeclaration": 2868, + "src": "6368:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21091,18 +21091,18 @@ "typeString": "bytes32" } ], - "id": 1417, + "id": 2904, "name": "resetListing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2105, - "src": "6308:12:2", + "referencedDeclaration": 3592, + "src": "6355:12:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1419, + "id": 2906, "isConstant": false, "isLValue": false, "isPure": false, @@ -21110,28 +21110,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6308:26:2", + "src": "6355:26:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1420, + "id": 2907, "nodeType": "ExpressionStatement", - "src": "6308:26:2" + "src": "6355:26:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1422, + "id": 2909, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1381, - "src": "6358:12:2", + "referencedDeclaration": 2868, + "src": "6410:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21145,18 +21145,18 @@ "typeString": "bytes32" } ], - "id": 1421, + "id": 2908, "name": "_ListingWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1071, - "src": "6340:17:2", + "referencedDeclaration": 2558, + "src": "6392:17:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1423, + "id": 2910, "isConstant": false, "isLValue": false, "isPure": false, @@ -21164,20 +21164,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6340:31:2", + "src": "6392:31:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1424, - "nodeType": "ExpressionStatement", - "src": "6340:31:2" + "id": 2911, + "nodeType": "EmitStatement", + "src": "6387:36:6" } ] }, "documentation": "@dev Allows the owner of a listingHash to remove the listingHash from the whitelist\nReturns all tokens to the owner of the listingHash\n@param _listingHash A listingHash msg.sender is the owner of.", - "id": 1426, + "id": 2913, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -21185,16 +21185,16 @@ "name": "exit", "nodeType": "FunctionDefinition", "parameters": { - "id": 1382, + "id": 2869, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1381, + "id": 2868, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1426, - "src": "5961:20:2", + "scope": 2913, + "src": "6008:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21202,10 +21202,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1380, + "id": 2867, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "5961:7:2", + "src": "6008:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21215,54 +21215,54 @@ "visibility": "internal" } ], - "src": "5960:22:2" + "src": "6007:22:6" }, "payable": false, "returnParameters": { - "id": 1383, + "id": 2870, "nodeType": "ParameterList", "parameters": [], - "src": "5992:0:2" + "src": "6039:0:6" }, - "scope": 2106, - "src": "5947:429:2", + "scope": 3593, + "src": "5994:434:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1577, + "id": 3064, "nodeType": "Block", - "src": "6978:1475:2", + "src": "7030:1536:6", "statements": [ { "assignments": [ - 1436 + 2923 ], "declarations": [ { "constant": false, - "id": 1436, + "id": 2923, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "6984:23:2", + "scope": 3065, + "src": "7036:23:6", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" }, "typeName": { "contractScope": null, - "id": 1435, + "id": 2922, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1117, - "src": "6984:7:2", + "referencedDeclaration": 2604, + "src": "7036:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" } }, @@ -21270,31 +21270,31 @@ "visibility": "internal" } ], - "id": 1440, + "id": 2927, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1437, + "id": 2924, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "7010:8:2", + "referencedDeclaration": 2627, + "src": "7062:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1439, + "id": 2926, "indexExpression": { "argumentTypes": null, - "id": 1438, + "id": 2925, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1428, - "src": "7019:12:2", + "referencedDeclaration": 2915, + "src": "7071:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21305,27 +21305,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7010:22:2", + "src": "7062:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "6984:48:2" + "src": "7036:48:6" }, { "assignments": [ - 1442 + 2929 ], "declarations": [ { "constant": false, - "id": 1442, - "name": "deposit", + "id": 2929, + "name": "minDeposit", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "7038:12:2", + "scope": 3065, + "src": "7090:15:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21333,10 +21333,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1441, + "id": 2928, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7038:4:2", + "src": "7090:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21346,21 +21346,21 @@ "visibility": "internal" } ], - "id": 1447, + "id": 2934, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, "hexValue": "6d696e4465706f736974", - "id": 1445, + "id": 2932, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7071:12:2", + "src": "7126:12:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_1562a3cff09047061ba41141a6bb560ed15f1ca2968c821562d091212629199d", @@ -21378,32 +21378,32 @@ ], "expression": { "argumentTypes": null, - "id": 1443, + "id": 2930, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "7053:13:2", + "referencedDeclaration": 2633, + "src": "7108:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1444, + "id": 2931, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "7053:17:2", + "referencedDeclaration": 2349, + "src": "7108:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1446, + "id": 2933, "isConstant": false, "isLValue": false, "isPure": false, @@ -21411,14 +21411,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7053:31:2", + "src": "7108:31:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "7038:46:2" + "src": "7090:49:6" }, { "expression": { @@ -21430,7 +21430,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1454, + "id": 2941, "isConstant": false, "isLValue": false, "isPure": false, @@ -21440,12 +21440,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1450, + "id": 2937, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1428, - "src": "7176:12:2", + "referencedDeclaration": 2915, + "src": "7231:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21459,18 +21459,18 @@ "typeString": "bytes32" } ], - "id": 1449, + "id": 2936, "name": "appWasMade", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1812, - "src": "7165:10:2", + "referencedDeclaration": 3299, + "src": "7220:10:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1451, + "id": 2938, "isConstant": false, "isLValue": false, "isPure": false, @@ -21478,7 +21478,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7165:24:2", + "src": "7220:24:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21490,32 +21490,32 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1452, + "id": 2939, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1436, - "src": "7193:7:2", + "referencedDeclaration": 2923, + "src": "7248:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1453, + "id": 2940, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "whitelisted", "nodeType": "MemberAccess", - "referencedDeclaration": 1110, - "src": "7193:19:2", + "referencedDeclaration": 2597, + "src": "7248:19:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7165:47:2", + "src": "7220:47:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21529,21 +21529,21 @@ "typeString": "bool" } ], - "id": 1448, + "id": 2935, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "7157:7:2", + "referencedDeclaration": 3705, + "src": "7212:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1455, + "id": 2942, "isConstant": false, "isLValue": false, "isPure": false, @@ -21551,15 +21551,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7157:56:2", + "src": "7212:56:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1456, + "id": 2943, "nodeType": "ExpressionStatement", - "src": "7157:56:2" + "src": "7212:56:6" }, { "expression": { @@ -21571,7 +21571,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1467, + "id": 2954, "isConstant": false, "isLValue": false, "isPure": false, @@ -21582,7 +21582,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1461, + "id": 2948, "isConstant": false, "isLValue": false, "isPure": false, @@ -21591,26 +21591,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1458, + "id": 2945, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1436, - "src": "7262:7:2", + "referencedDeclaration": 2923, + "src": "7317:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1459, + "id": 2946, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "7262:19:2", + "referencedDeclaration": 2603, + "src": "7317:19:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21621,14 +21621,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1460, + "id": 2947, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7285:1:2", + "src": "7340:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -21636,7 +21636,7 @@ }, "value": "0" }, - "src": "7262:24:2", + "src": "7317:24:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21650,42 +21650,42 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1462, + "id": 2949, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "7290:10:2", + "referencedDeclaration": 2623, + "src": "7345:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1465, + "id": 2952, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1463, + "id": 2950, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1436, - "src": "7301:7:2", + "referencedDeclaration": 2923, + "src": "7356:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1464, + "id": 2951, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "7301:19:2", + "referencedDeclaration": 2603, + "src": "7356:19:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21696,27 +21696,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7290:31:2", + "src": "7345:31:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1466, + "id": 2953, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 1123, - "src": "7290:40:2", + "referencedDeclaration": 2610, + "src": "7345:40:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7262:68:2", + "src": "7317:68:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21730,21 +21730,21 @@ "typeString": "bool" } ], - "id": 1457, + "id": 2944, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "7254:7:2", + "referencedDeclaration": 3705, + "src": "7309:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1468, + "id": 2955, "isConstant": false, "isLValue": false, "isPure": false, @@ -21752,15 +21752,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7254:77:2", + "src": "7309:77:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1469, + "id": 2956, "nodeType": "ExpressionStatement", - "src": "7254:77:2" + "src": "7309:77:6" }, { "condition": { @@ -21769,7 +21769,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1473, + "id": 2960, "isConstant": false, "isLValue": false, "isPure": false, @@ -21778,26 +21778,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1470, + "id": 2957, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1436, - "src": "7342:7:2", + "referencedDeclaration": 2923, + "src": "7397:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1471, + "id": 2958, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "7342:23:2", + "referencedDeclaration": 2601, + "src": "7397:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21807,31 +21807,31 @@ "operator": "<", "rightExpression": { "argumentTypes": null, - "id": 1472, - "name": "deposit", + "id": 2959, + "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "7368:7:2", + "referencedDeclaration": 2929, + "src": "7423:10:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7342:33:2", + "src": "7397:36:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1485, + "id": 2972, "nodeType": "IfStatement", - "src": "7338:188:2", + "src": "7393:196:6", "trueBody": { - "id": 1484, + "id": 2971, "nodeType": "Block", - "src": "7377:149:2", + "src": "7435:154:6", "statements": [ { "expression": { @@ -21839,12 +21839,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1475, + "id": 2962, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1428, - "src": "7452:12:2", + "referencedDeclaration": 2915, + "src": "7510:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21858,18 +21858,18 @@ "typeString": "bytes32" } ], - "id": 1474, + "id": 2961, "name": "resetListing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2105, - "src": "7439:12:2", + "referencedDeclaration": 3592, + "src": "7497:12:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1476, + "id": 2963, "isConstant": false, "isLValue": false, "isPure": false, @@ -21877,28 +21877,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7439:26:2", + "src": "7497:26:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1477, + "id": 2964, "nodeType": "ExpressionStatement", - "src": "7439:26:2" + "src": "7497:26:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1479, + "id": 2966, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1428, - "src": "7490:12:2", + "referencedDeclaration": 2915, + "src": "7553:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -21912,18 +21912,18 @@ "typeString": "bytes32" } ], - "id": 1478, + "id": 2965, "name": "_TouchAndRemoved", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1075, - "src": "7473:16:2", + "referencedDeclaration": 2562, + "src": "7536:16:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1480, + "id": 2967, "isConstant": false, "isLValue": false, "isPure": false, @@ -21931,28 +21931,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7473:30:2", + "src": "7536:30:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1481, - "nodeType": "ExpressionStatement", - "src": "7473:30:2" + "id": 2968, + "nodeType": "EmitStatement", + "src": "7531:35:6" }, { "expression": { "argumentTypes": null, "hexValue": "30", - "id": 1482, + "id": 2969, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7518:1:2", + "src": "7581:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -21960,26 +21960,26 @@ }, "value": "0" }, - "functionReturnParameters": 1434, - "id": 1483, + "functionReturnParameters": 2921, + "id": 2970, "nodeType": "Return", - "src": "7511:8:2" + "src": "7574:8:6" } ] } }, { "assignments": [ - 1487 + 2974 ], "declarations": [ { "constant": false, - "id": 1487, + "id": 2974, "name": "pollID", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "7551:11:2", + "scope": 3065, + "src": "7614:11:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21987,10 +21987,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1486, + "id": 2973, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "7551:4:2", + "src": "7614:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22000,7 +22000,7 @@ "visibility": "internal" } ], - "id": 1503, + "id": 2990, "initialValue": { "argumentTypes": null, "arguments": [ @@ -22010,14 +22010,14 @@ { "argumentTypes": null, "hexValue": "766f746551756f72756d", - "id": 1492, + "id": 2979, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7609:12:2", + "src": "7670:12:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_9b01c2212638b995654bf3d584befbb3576184e03cd1a9ae5693a18a1f559878", @@ -22035,32 +22035,32 @@ ], "expression": { "argumentTypes": null, - "id": 1490, + "id": 2977, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "7591:13:2", + "referencedDeclaration": 2633, + "src": "7652:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1491, + "id": 2978, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "7591:17:2", + "referencedDeclaration": 2349, + "src": "7652:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1493, + "id": 2980, "isConstant": false, "isLValue": false, "isPure": false, @@ -22068,7 +22068,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7591:31:2", + "src": "7652:31:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22080,14 +22080,14 @@ { "argumentTypes": null, "hexValue": "636f6d6d697453746167654c656e", - "id": 1496, + "id": 2983, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7650:16:2", + "src": "7709:16:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_22aa10f6207ed6245b2e23bddfcdfa1a542b375f7cf45082a1a75b9304a6150d", @@ -22105,32 +22105,32 @@ ], "expression": { "argumentTypes": null, - "id": 1494, + "id": 2981, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "7632:13:2", + "referencedDeclaration": 2633, + "src": "7691:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1495, + "id": 2982, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "7632:17:2", + "referencedDeclaration": 2349, + "src": "7691:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1497, + "id": 2984, "isConstant": false, "isLValue": false, "isPure": false, @@ -22138,7 +22138,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7632:35:2", + "src": "7691:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22150,14 +22150,14 @@ { "argumentTypes": null, "hexValue": "72657665616c53746167654c656e", - "id": 1500, + "id": 2987, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7695:16:2", + "src": "7752:16:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_e8858300ed02b4242350c6412c69b3951ae8f1d10eb49beafb9ecebaba7a0af1", @@ -22175,32 +22175,32 @@ ], "expression": { "argumentTypes": null, - "id": 1498, + "id": 2985, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "7677:13:2", + "referencedDeclaration": 2633, + "src": "7734:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1499, + "id": 2986, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "7677:17:2", + "referencedDeclaration": 2349, + "src": "7734:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1501, + "id": 2988, "isConstant": false, "isLValue": false, "isPure": false, @@ -22208,7 +22208,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7677:35:2", + "src": "7734:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22232,32 +22232,32 @@ ], "expression": { "argumentTypes": null, - "id": 1488, + "id": 2975, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "7565:6:2", + "referencedDeclaration": 2631, + "src": "7628:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1489, + "id": 2976, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "startPoll", "nodeType": "MemberAccess", - "referencedDeclaration": 3121, - "src": "7565:16:2", + "referencedDeclaration": 1101, + "src": "7628:16:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) external returns (uint256)" } }, - "id": 1502, + "id": 2989, "isConstant": false, "isLValue": false, "isPure": false, @@ -22265,19 +22265,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7565:153:2", + "src": "7628:147:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "7551:167:2" + "src": "7614:161:6" }, { "expression": { "argumentTypes": null, - "id": 1526, + "id": 3013, "isConstant": false, "isLValue": false, "isPure": false, @@ -22286,26 +22286,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1504, + "id": 2991, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "7725:10:2", + "referencedDeclaration": 2623, + "src": "7782:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1506, + "id": 2993, "indexExpression": { "argumentTypes": null, - "id": 1505, + "id": 2992, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1487, - "src": "7736:6:2", + "referencedDeclaration": 2974, + "src": "7793:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22316,9 +22316,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "7725:18:2", + "src": "7782:18:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, @@ -22331,18 +22331,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1508, + "id": 2995, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "7776:3:2", + "referencedDeclaration": 3702, + "src": "7833:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1509, + "id": 2996, "isConstant": false, "isLValue": false, "isPure": false, @@ -22350,7 +22350,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7776:10:2", + "src": "7833:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22362,7 +22362,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1521, + "id": 3008, "isConstant": false, "isLValue": false, "isPure": false, @@ -22376,7 +22376,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1518, + "id": 3005, "isConstant": false, "isLValue": false, "isPure": false, @@ -22390,7 +22390,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1515, + "id": 3002, "isConstant": false, "isLValue": false, "isPure": false, @@ -22398,14 +22398,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "313030", - "id": 1510, + "id": 2997, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7808:3:2", + "src": "7865:3:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -22421,14 +22421,14 @@ { "argumentTypes": null, "hexValue": "64697370656e736174696f6e506374", - "id": 1513, + "id": 3000, "isConstant": false, "isLValue": false, "isPure": true, "kind": "string", "lValueRequested": false, "nodeType": "Literal", - "src": "7832:17:2", + "src": "7889:17:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_stringliteral_a44475ce52a893bc7cadba79a6351960ca7e12219e3b7f3a04da4d29c39864e4", @@ -22446,32 +22446,32 @@ ], "expression": { "argumentTypes": null, - "id": 1511, + "id": 2998, "name": "parameterizer", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1146, - "src": "7814:13:2", + "referencedDeclaration": 2633, + "src": "7871:13:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Parameterizer_$1003", + "typeIdentifier": "t_contract$_Parameterizer_$2490", "typeString": "contract Parameterizer" } }, - "id": 1512, + "id": 2999, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "get", "nodeType": "MemberAccess", - "referencedDeclaration": 865, - "src": "7814:17:2", + "referencedDeclaration": 2349, + "src": "7871:17:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_string_memory_ptr_$returns$_t_uint256_$", "typeString": "function (string memory) view external returns (uint256)" } }, - "id": 1514, + "id": 3001, "isConstant": false, "isLValue": false, "isPure": false, @@ -22479,27 +22479,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7814:36:2", + "src": "7871:36:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7808:42:2", + "src": "7865:42:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1516, + "id": 3003, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "7807:44:2", + "src": "7864:44:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22509,32 +22509,32 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 1517, - "name": "deposit", + "id": 3004, + "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "7854:7:2", + "referencedDeclaration": 2929, + "src": "7911:10:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7807:54:2", + "src": "7864:57:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1519, + "id": 3006, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "7806:56:2", + "src": "7863:59:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22545,14 +22545,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "313030", - "id": 1520, + "id": 3007, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7865:3:2", + "src": "7925:3:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_100_by_1", @@ -22560,7 +22560,7 @@ }, "value": "100" }, - "src": "7806:62:2", + "src": "7863:65:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22568,12 +22568,12 @@ }, { "argumentTypes": null, - "id": 1522, - "name": "deposit", + "id": 3009, + "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "7883:7:2", + "referencedDeclaration": 2929, + "src": "7943:10:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22582,14 +22582,14 @@ { "argumentTypes": null, "hexValue": "66616c7365", - "id": 1523, + "id": 3010, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "7908:5:2", + "src": "7971:5:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -22600,14 +22600,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 1524, + "id": 3011, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7934:1:2", + "src": "7997:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -22618,18 +22618,18 @@ ], "expression": { "argumentTypes": null, - "id": 1507, + "id": 2994, "name": "Challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1132, - "src": "7746:9:2", + "referencedDeclaration": 2619, + "src": "7803:9:6", "typeDescriptions": { - "typeIdentifier": "t_type$_t_struct$_Challenge_$1132_storage_ptr_$", + "typeIdentifier": "t_type$_t_struct$_Challenge_$2619_storage_ptr_$", "typeString": "type(struct Registry.Challenge storage pointer)" } }, - "id": 1525, + "id": 3012, "isConstant": false, "isLValue": false, "isPure": false, @@ -22643,26 +22643,26 @@ "totalTokens" ], "nodeType": "FunctionCall", - "src": "7746:196:2", + "src": "7803:202:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_memory", + "typeIdentifier": "t_struct$_Challenge_$2619_memory", "typeString": "struct Registry.Challenge memory" } }, - "src": "7725:217:2", + "src": "7782:223:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1527, + "id": 3014, "nodeType": "ExpressionStatement", - "src": "7725:217:2" + "src": "7782:223:6" }, { "expression": { "argumentTypes": null, - "id": 1532, + "id": 3019, "isConstant": false, "isLValue": false, "isPure": false, @@ -22671,26 +22671,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1528, + "id": 3015, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1436, - "src": "8007:7:2", + "referencedDeclaration": 2923, + "src": "8070:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1530, + "id": 3017, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "8007:19:2", + "referencedDeclaration": 2603, + "src": "8070:19:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22700,31 +22700,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 1531, + "id": 3018, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1487, - "src": "8029:6:2", + "referencedDeclaration": 2974, + "src": "8092:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8007:28:2", + "src": "8070:28:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1533, + "id": 3020, "nodeType": "ExpressionStatement", - "src": "8007:28:2" + "src": "8070:28:6" }, { "expression": { "argumentTypes": null, - "id": 1538, + "id": 3025, "isConstant": false, "isLValue": false, "isPure": false, @@ -22733,26 +22733,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1534, + "id": 3021, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1436, - "src": "8095:7:2", + "referencedDeclaration": 2923, + "src": "8158:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 1536, + "id": 3023, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "8095:23:2", + "referencedDeclaration": 2601, + "src": "8158:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22762,26 +22762,26 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 1537, - "name": "deposit", + "id": 3024, + "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "8122:7:2", + "referencedDeclaration": 2929, + "src": "8185:10:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8095:34:2", + "src": "8158:37:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1539, + "id": 3026, "nodeType": "ExpressionStatement", - "src": "8095:34:2" + "src": "8158:37:6" }, { "expression": { @@ -22794,18 +22794,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1543, + "id": 3030, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "8199:3:2", + "referencedDeclaration": 3702, + "src": "8265:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1544, + "id": 3031, "isConstant": false, "isLValue": false, "isPure": false, @@ -22813,7 +22813,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "8199:10:2", + "src": "8265:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22821,25 +22821,25 @@ }, { "argumentTypes": null, - "id": 1545, + "id": 3032, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3921, - "src": "8211:4:2", + "referencedDeclaration": 3729, + "src": "8277:4:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_Registry_$2106", + "typeIdentifier": "t_contract$_Registry_$3593", "typeString": "contract Registry" } }, { "argumentTypes": null, - "id": 1546, - "name": "deposit", + "id": 3033, + "name": "minDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1442, - "src": "8217:7:2", + "referencedDeclaration": 2929, + "src": "8283:10:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22853,7 +22853,7 @@ "typeString": "address" }, { - "typeIdentifier": "t_contract$_Registry_$2106", + "typeIdentifier": "t_contract$_Registry_$3593", "typeString": "contract Registry" }, { @@ -22863,32 +22863,32 @@ ], "expression": { "argumentTypes": null, - "id": 1541, + "id": 3028, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "8180:5:2", + "referencedDeclaration": 2629, + "src": "8246:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 1542, + "id": 3029, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transferFrom", "nodeType": "MemberAccess", - "referencedDeclaration": 3747, - "src": "8180:18:2", + "referencedDeclaration": 390, + "src": "8246:18:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,address,uint256) external returns (bool)" } }, - "id": 1547, + "id": 3034, "isConstant": false, "isLValue": false, "isPure": false, @@ -22896,7 +22896,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8180:45:2", + "src": "8246:48:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22910,21 +22910,21 @@ "typeString": "bool" } ], - "id": 1540, + "id": 3027, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "8172:7:2", + "referencedDeclaration": 3705, + "src": "8238:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1548, + "id": 3035, "isConstant": false, "isLValue": false, "isPure": false, @@ -22932,26 +22932,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8172:54:2", + "src": "8238:57:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1549, + "id": 3036, "nodeType": "ExpressionStatement", - "src": "8172:54:2" + "src": "8238:57:6" }, { "assignments": [], "declarations": [ { "constant": false, - "id": 1551, + "id": 3038, "name": "commitEndDate", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "8233:18:2", + "scope": 3065, + "src": "8302:18:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22959,10 +22959,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1550, + "id": 3037, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8233:4:2", + "src": "8302:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22972,21 +22972,21 @@ "visibility": "internal" } ], - "id": 1552, + "id": 3039, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "8233:18:2" + "src": "8302:18:6" }, { "assignments": [], "declarations": [ { "constant": false, - "id": 1554, + "id": 3041, "name": "revealEndDate", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "8257:18:2", + "scope": 3065, + "src": "8326:18:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22994,10 +22994,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1553, + "id": 3040, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "8257:4:2", + "src": "8326:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23007,15 +23007,15 @@ "visibility": "internal" } ], - "id": 1555, + "id": 3042, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "8257:18:2" + "src": "8326:18:6" }, { "expression": { "argumentTypes": null, - "id": 1563, + "id": 3050, "isConstant": false, "isLValue": false, "isPure": false, @@ -23025,12 +23025,12 @@ "components": [ { "argumentTypes": null, - "id": 1556, + "id": 3043, "name": "commitEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1551, - "src": "8282:13:2", + "referencedDeclaration": 3038, + "src": "8351:13:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23038,12 +23038,12 @@ }, { "argumentTypes": null, - "id": 1557, + "id": 3044, "name": "revealEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1554, - "src": "8297:13:2", + "referencedDeclaration": 3041, + "src": "8366:13:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23051,14 +23051,14 @@ }, null ], - "id": 1558, + "id": 3045, "isConstant": false, "isInlineArray": false, "isLValue": true, "isPure": false, "lValueRequested": true, "nodeType": "TupleExpression", - "src": "8281:31:2", + "src": "8350:31:6", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$__$", "typeString": "tuple(uint256,uint256,)" @@ -23071,12 +23071,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1561, + "id": 3048, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1487, - "src": "8330:6:2", + "referencedDeclaration": 2974, + "src": "8399:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23092,32 +23092,32 @@ ], "expression": { "argumentTypes": null, - "id": 1559, + "id": 3046, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "8315:6:2", + "referencedDeclaration": 2631, + "src": "8384:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1560, + "id": 3047, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "pollMap", "nodeType": "MemberAccess", - "referencedDeclaration": 2561, - "src": "8315:14:2", + "referencedDeclaration": 535, + "src": "8384:14:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "function (uint256) view external returns (uint256,uint256,uint256,uint256,uint256)" } }, - "id": 1562, + "id": 3049, "isConstant": false, "isLValue": false, "isPure": false, @@ -23125,34 +23125,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8315:22:2", + "src": "8384:22:6", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(uint256,uint256,uint256,uint256,uint256)" } }, - "src": "8281:56:2", + "src": "8350:56:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1564, + "id": 3051, "nodeType": "ExpressionStatement", - "src": "8281:56:2" + "src": "8350:56:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1566, + "id": 3053, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1428, - "src": "8359:12:2", + "referencedDeclaration": 2915, + "src": "8436:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -23160,12 +23160,12 @@ }, { "argumentTypes": null, - "id": 1567, + "id": 3054, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1487, - "src": "8373:6:2", + "referencedDeclaration": 2974, + "src": "8456:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23173,12 +23173,12 @@ }, { "argumentTypes": null, - "id": 1568, + "id": 3055, "name": "_data", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1430, - "src": "8381:5:2", + "referencedDeclaration": 2917, + "src": "8470:5:6", "typeDescriptions": { "typeIdentifier": "t_string_calldata_ptr", "typeString": "string calldata" @@ -23186,12 +23186,12 @@ }, { "argumentTypes": null, - "id": 1569, + "id": 3056, "name": "commitEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1551, - "src": "8388:13:2", + "referencedDeclaration": 3038, + "src": "8483:13:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23199,12 +23199,12 @@ }, { "argumentTypes": null, - "id": 1570, + "id": 3057, "name": "revealEndDate", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1554, - "src": "8403:13:2", + "referencedDeclaration": 3041, + "src": "8504:13:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23214,18 +23214,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1571, + "id": 3058, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "8418:3:2", + "referencedDeclaration": 3702, + "src": "8525:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1572, + "id": 3059, "isConstant": false, "isLValue": false, "isPure": false, @@ -23233,7 +23233,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "8418:10:2", + "src": "8525:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23267,18 +23267,18 @@ "typeString": "address" } ], - "id": 1565, + "id": 3052, "name": "_Challenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1035, - "src": "8348:10:2", + "referencedDeclaration": 2522, + "src": "8418:10:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_string_memory_ptr_$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (bytes32,uint256,string memory,uint256,uint256,address)" } }, - "id": 1573, + "id": 3060, "isConstant": false, "isLValue": false, "isPure": false, @@ -23286,39 +23286,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8348:81:2", + "src": "8418:123:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1574, - "nodeType": "ExpressionStatement", - "src": "8348:81:2" + "id": 3061, + "nodeType": "EmitStatement", + "src": "8413:128:6" }, { "expression": { "argumentTypes": null, - "id": 1575, + "id": 3062, "name": "pollID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1487, - "src": "8442:6:2", + "referencedDeclaration": 2974, + "src": "8555:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1434, - "id": 1576, + "functionReturnParameters": 2921, + "id": 3063, "nodeType": "Return", - "src": "8435:13:2" + "src": "8548:13:6" } ] }, "documentation": "@dev Starts a poll for a listingHash which is either in the apply stage or\nalready in the whitelist. Tokens are taken from the challenger and the\napplicant's deposits are locked.\n@param _listingHash The listingHash being challenged, whether listed or in application\n@param _data Extra data relevant to the challenge. Think IPFS hashes.", - "id": 1578, + "id": 3065, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -23326,16 +23326,16 @@ "name": "challenge", "nodeType": "FunctionDefinition", "parameters": { - "id": 1431, + "id": 2918, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1428, + "id": 2915, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "6906:20:2", + "scope": 3065, + "src": "6958:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23343,10 +23343,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1427, + "id": 2914, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "6906:7:2", + "src": "6958:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -23357,11 +23357,11 @@ }, { "constant": false, - "id": 1430, + "id": 2917, "name": "_data", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "6928:12:2", + "scope": 3065, + "src": "6980:12:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23369,10 +23369,10 @@ "typeString": "string" }, "typeName": { - "id": 1429, + "id": 2916, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6928:6:2", + "src": "6980:6:6", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -23382,20 +23382,20 @@ "visibility": "internal" } ], - "src": "6905:36:2" + "src": "6957:36:6" }, "payable": false, "returnParameters": { - "id": 1434, + "id": 2921, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1433, + "id": 2920, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1578, - "src": "6960:16:2", + "scope": 3065, + "src": "7012:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23403,10 +23403,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1432, + "id": 2919, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "6960:4:2", + "src": "7012:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23416,19 +23416,19 @@ "visibility": "internal" } ], - "src": "6959:18:2" + "src": "7011:18:6" }, - "scope": 2106, - "src": "6887:1566:2", + "scope": 3593, + "src": "6939:1627:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "external" }, { "body": { - "id": 1605, + "id": 3092, "nodeType": "Block", - "src": "8733:217:2", + "src": "8846:217:6", "statements": [ { "condition": { @@ -23436,12 +23436,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1584, + "id": 3071, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1580, - "src": "8760:12:2", + "referencedDeclaration": 3067, + "src": "8873:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -23455,18 +23455,18 @@ "typeString": "bytes32" } ], - "id": 1583, + "id": 3070, "name": "canBeWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1784, - "src": "8743:16:2", + "referencedDeclaration": 3271, + "src": "8856:16:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1585, + "id": 3072, "isConstant": false, "isLValue": false, "isPure": false, @@ -23474,7 +23474,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8743:30:2", + "src": "8856:30:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23486,12 +23486,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1592, + "id": 3079, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1580, - "src": "8857:12:2", + "referencedDeclaration": 3067, + "src": "8970:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -23505,18 +23505,18 @@ "typeString": "bytes32" } ], - "id": 1591, + "id": 3078, "name": "challengeCanBeResolved", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1867, - "src": "8834:22:2", + "referencedDeclaration": 3354, + "src": "8947:22:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1593, + "id": 3080, "isConstant": false, "isLValue": false, "isPure": false, @@ -23524,16 +23524,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8834:36:2", + "src": "8947:36:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 1602, + "id": 3089, "nodeType": "Block", - "src": "8923:23:2", + "src": "9036:23:6", "statements": [ { "expression": { @@ -23541,21 +23541,21 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1599, + "id": 3086, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 3897, - 3898 + 3707, + 3708 ], - "referencedDeclaration": 3897, - "src": "8931:6:2", + "referencedDeclaration": 3707, + "src": "9044:6:6", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1600, + "id": 3087, "isConstant": false, "isLValue": false, "isPure": false, @@ -23563,25 +23563,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8931:8:2", + "src": "9044:8:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1601, + "id": 3088, "nodeType": "ExpressionStatement", - "src": "8931:8:2" + "src": "9044:8:6" } ] }, - "id": 1603, + "id": 3090, "nodeType": "IfStatement", - "src": "8830:116:2", + "src": "8943:116:6", "trueBody": { - "id": 1598, + "id": 3085, "nodeType": "Block", - "src": "8872:45:2", + "src": "8985:45:6", "statements": [ { "expression": { @@ -23589,12 +23589,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1595, + "id": 3082, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1580, - "src": "8897:12:2", + "referencedDeclaration": 3067, + "src": "9010:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -23608,18 +23608,18 @@ "typeString": "bytes32" } ], - "id": 1594, + "id": 3081, "name": "resolveChallenge", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2028, - "src": "8880:16:2", + "referencedDeclaration": 3515, + "src": "8993:16:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1596, + "id": 3083, "isConstant": false, "isLValue": false, "isPure": false, @@ -23627,26 +23627,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8880:30:2", + "src": "8993:30:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1597, + "id": 3084, "nodeType": "ExpressionStatement", - "src": "8880:30:2" + "src": "8993:30:6" } ] } }, - "id": 1604, + "id": 3091, "nodeType": "IfStatement", - "src": "8739:207:2", + "src": "8852:207:6", "trueBody": { - "id": 1590, + "id": 3077, "nodeType": "Block", - "src": "8775:49:2", + "src": "8888:49:6", "statements": [ { "expression": { @@ -23654,12 +23654,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1587, + "id": 3074, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1580, - "src": "8804:12:2", + "referencedDeclaration": 3067, + "src": "8917:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -23673,18 +23673,18 @@ "typeString": "bytes32" } ], - "id": 1586, + "id": 3073, "name": "whitelistApplication", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2052, - "src": "8783:20:2", + "referencedDeclaration": 3539, + "src": "8896:20:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1588, + "id": 3075, "isConstant": false, "isLValue": false, "isPure": false, @@ -23692,15 +23692,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8783:34:2", + "src": "8896:34:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1589, + "id": 3076, "nodeType": "ExpressionStatement", - "src": "8783:34:2" + "src": "8896:34:6" } ] } @@ -23708,7 +23708,7 @@ ] }, "documentation": "@dev Updates a listingHash's status from 'application' to 'listing' or resolves\na challenge if one exists.\n@param _listingHash The listingHash whose status is being updated", - "id": 1606, + "id": 3093, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -23716,16 +23716,16 @@ "name": "updateStatus", "nodeType": "FunctionDefinition", "parameters": { - "id": 1581, + "id": 3068, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1580, + "id": 3067, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1606, - "src": "8704:20:2", + "scope": 3093, + "src": "8817:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23733,10 +23733,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1579, + "id": 3066, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "8704:7:2", + "src": "8817:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -23746,26 +23746,26 @@ "visibility": "internal" } ], - "src": "8703:22:2" + "src": "8816:22:6" }, "payable": false, "returnParameters": { - "id": 1582, + "id": 3069, "nodeType": "ParameterList", "parameters": [], - "src": "8733:0:2" + "src": "8846:0:6" }, - "scope": 2106, - "src": "8682:268:2", + "scope": 3593, + "src": "8795:268:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1693, + "id": 3180, "nodeType": "Block", - "src": "9419:848:2", + "src": "9532:853:6", "statements": [ { "expression": { @@ -23777,7 +23777,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1622, + "id": 3109, "isConstant": false, "isLValue": false, "isPure": false, @@ -23790,26 +23790,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1614, + "id": 3101, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "9531:10:2", + "referencedDeclaration": 2623, + "src": "9644:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1616, + "id": 3103, "indexExpression": { "argumentTypes": null, - "id": 1615, + "id": 3102, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "9542:12:2", + "referencedDeclaration": 3095, + "src": "9655:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23820,43 +23820,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9531:24:2", + "src": "9644:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1617, + "id": 3104, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokenClaims", "nodeType": "MemberAccess", - "referencedDeclaration": 1131, - "src": "9531:36:2", + "referencedDeclaration": 2618, + "src": "9644:36:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 1620, + "id": 3107, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1618, + "id": 3105, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9568:3:2", + "referencedDeclaration": 3702, + "src": "9681:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1619, + "id": 3106, "isConstant": false, "isLValue": false, "isPure": false, @@ -23864,7 +23864,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9568:10:2", + "src": "9681:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23875,7 +23875,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9531:48:2", + "src": "9644:48:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23886,14 +23886,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 1621, + "id": 3108, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9583:5:2", + "src": "9696:5:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -23901,7 +23901,7 @@ }, "value": "false" }, - "src": "9531:57:2", + "src": "9644:57:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23915,21 +23915,21 @@ "typeString": "bool" } ], - "id": 1613, + "id": 3100, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "9523:7:2", + "referencedDeclaration": 3705, + "src": "9636:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1623, + "id": 3110, "isConstant": false, "isLValue": false, "isPure": false, @@ -23937,15 +23937,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9523:66:2", + "src": "9636:66:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1624, + "id": 3111, "nodeType": "ExpressionStatement", - "src": "9523:66:2" + "src": "9636:66:6" }, { "expression": { @@ -23957,7 +23957,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1631, + "id": 3118, "isConstant": false, "isLValue": false, "isPure": false, @@ -23968,26 +23968,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1626, + "id": 3113, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "9603:10:2", + "referencedDeclaration": 2623, + "src": "9716:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1628, + "id": 3115, "indexExpression": { "argumentTypes": null, - "id": 1627, + "id": 3114, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "9614:12:2", + "referencedDeclaration": 3095, + "src": "9727:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23998,21 +23998,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9603:24:2", + "src": "9716:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1629, + "id": 3116, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 1123, - "src": "9603:33:2", + "referencedDeclaration": 2610, + "src": "9716:33:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24023,14 +24023,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "74727565", - "id": 1630, + "id": 3117, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "9640:4:2", + "src": "9753:4:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -24038,7 +24038,7 @@ }, "value": "true" }, - "src": "9603:41:2", + "src": "9716:41:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24052,21 +24052,21 @@ "typeString": "bool" } ], - "id": 1625, + "id": 3112, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "9595:7:2", + "referencedDeclaration": 3705, + "src": "9708:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1632, + "id": 3119, "isConstant": false, "isLValue": false, "isPure": false, @@ -24074,28 +24074,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9595:50:2", + "src": "9708:50:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1633, + "id": 3120, "nodeType": "ExpressionStatement", - "src": "9595:50:2" + "src": "9708:50:6" }, { "assignments": [ - 1635 + 3122 ], "declarations": [ { "constant": false, - "id": 1635, + "id": 3122, "name": "voterTokens", "nodeType": "VariableDeclaration", - "scope": 1694, - "src": "9652:16:2", + "scope": 3181, + "src": "9765:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24103,10 +24103,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1634, + "id": 3121, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9652:4:2", + "src": "9765:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24116,7 +24116,7 @@ "visibility": "internal" } ], - "id": 1643, + "id": 3130, "initialValue": { "argumentTypes": null, "arguments": [ @@ -24124,18 +24124,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1638, + "id": 3125, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9698:3:2", + "referencedDeclaration": 3702, + "src": "9811:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1639, + "id": 3126, "isConstant": false, "isLValue": false, "isPure": false, @@ -24143,7 +24143,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9698:10:2", + "src": "9811:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24151,12 +24151,12 @@ }, { "argumentTypes": null, - "id": 1640, + "id": 3127, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "9710:12:2", + "referencedDeclaration": 3095, + "src": "9823:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24164,12 +24164,12 @@ }, { "argumentTypes": null, - "id": 1641, + "id": 3128, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1610, - "src": "9724:5:2", + "referencedDeclaration": 3097, + "src": "9837:5:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24193,32 +24193,32 @@ ], "expression": { "argumentTypes": null, - "id": 1636, + "id": 3123, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "9671:6:2", + "referencedDeclaration": 2631, + "src": "9784:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1637, + "id": 3124, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getNumPassingTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 3065, - "src": "9671:26:2", + "referencedDeclaration": 1045, + "src": "9784:26:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256,uint256) view external returns (uint256)" } }, - "id": 1642, + "id": 3129, "isConstant": false, "isLValue": false, "isPure": false, @@ -24226,27 +24226,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9671:59:2", + "src": "9784:59:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9652:78:2" + "src": "9765:78:6" }, { "assignments": [ - 1645 + 3132 ], "declarations": [ { "constant": false, - "id": 1645, + "id": 3132, "name": "reward", "nodeType": "VariableDeclaration", - "scope": 1694, - "src": "9736:11:2", + "scope": 3181, + "src": "9849:11:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24254,10 +24254,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1644, + "id": 3131, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9736:4:2", + "src": "9849:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24267,7 +24267,7 @@ "visibility": "internal" } ], - "id": 1652, + "id": 3139, "initialValue": { "argumentTypes": null, "arguments": [ @@ -24275,18 +24275,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1647, + "id": 3134, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "9762:3:2", + "referencedDeclaration": 3702, + "src": "9875:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1648, + "id": 3135, "isConstant": false, "isLValue": false, "isPure": false, @@ -24294,7 +24294,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9762:10:2", + "src": "9875:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24302,12 +24302,12 @@ }, { "argumentTypes": null, - "id": 1649, + "id": 3136, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "9774:12:2", + "referencedDeclaration": 3095, + "src": "9887:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24315,12 +24315,12 @@ }, { "argumentTypes": null, - "id": 1650, + "id": 3137, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1610, - "src": "9788:5:2", + "referencedDeclaration": 3097, + "src": "9901:5:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24342,18 +24342,18 @@ "typeString": "uint256" } ], - "id": 1646, + "id": 3133, "name": "voterReward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1736, - "src": "9750:11:2", + "referencedDeclaration": 3223, + "src": "9863:11:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256,uint256) view returns (uint256)" } }, - "id": 1651, + "id": 3138, "isConstant": false, "isLValue": false, "isPure": false, @@ -24361,19 +24361,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9750:44:2", + "src": "9863:44:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9736:58:2" + "src": "9849:58:6" }, { "expression": { "argumentTypes": null, - "id": 1658, + "id": 3145, "isConstant": false, "isLValue": false, "isPure": false, @@ -24384,26 +24384,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1653, + "id": 3140, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "9944:10:2", + "referencedDeclaration": 2623, + "src": "10057:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1655, + "id": 3142, "indexExpression": { "argumentTypes": null, - "id": 1654, + "id": 3141, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "9955:12:2", + "referencedDeclaration": 3095, + "src": "10068:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24414,21 +24414,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9944:24:2", + "src": "10057:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1656, + "id": 3143, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "totalTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 1127, - "src": "9944:36:2", + "referencedDeclaration": 2614, + "src": "10057:36:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24438,31 +24438,31 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 1657, + "id": 3144, "name": "voterTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1635, - "src": "9984:11:2", + "referencedDeclaration": 3122, + "src": "10097:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9944:51:2", + "src": "10057:51:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1659, + "id": 3146, "nodeType": "ExpressionStatement", - "src": "9944:51:2" + "src": "10057:51:6" }, { "expression": { "argumentTypes": null, - "id": 1665, + "id": 3152, "isConstant": false, "isLValue": false, "isPure": false, @@ -24473,26 +24473,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1660, + "id": 3147, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "10001:10:2", + "referencedDeclaration": 2623, + "src": "10114:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1662, + "id": 3149, "indexExpression": { "argumentTypes": null, - "id": 1661, + "id": 3148, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "10012:12:2", + "referencedDeclaration": 3095, + "src": "10125:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24503,21 +24503,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10001:24:2", + "src": "10114:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1663, + "id": 3150, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 1119, - "src": "10001:35:2", + "referencedDeclaration": 2606, + "src": "10114:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24527,31 +24527,31 @@ "operator": "-=", "rightHandSide": { "argumentTypes": null, - "id": 1664, + "id": 3151, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1645, - "src": "10040:6:2", + "referencedDeclaration": 3132, + "src": "10153:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10001:45:2", + "src": "10114:45:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1666, + "id": 3153, "nodeType": "ExpressionStatement", - "src": "10001:45:2" + "src": "10114:45:6" }, { "expression": { "argumentTypes": null, - "id": 1675, + "id": 3162, "isConstant": false, "isLValue": false, "isPure": false, @@ -24564,26 +24564,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1667, + "id": 3154, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "10102:10:2", + "referencedDeclaration": 2623, + "src": "10215:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1669, + "id": 3156, "indexExpression": { "argumentTypes": null, - "id": 1668, + "id": 3155, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "10113:12:2", + "referencedDeclaration": 3095, + "src": "10226:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24594,43 +24594,43 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10102:24:2", + "src": "10215:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1670, + "id": 3157, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokenClaims", "nodeType": "MemberAccess", - "referencedDeclaration": 1131, - "src": "10102:36:2", + "referencedDeclaration": 2618, + "src": "10215:36:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 1673, + "id": 3160, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1671, + "id": 3158, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "10139:3:2", + "referencedDeclaration": 3702, + "src": "10252:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1672, + "id": 3159, "isConstant": false, "isLValue": false, "isPure": false, @@ -24638,7 +24638,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10139:10:2", + "src": "10252:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24649,7 +24649,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "10102:48:2", + "src": "10215:48:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24660,14 +24660,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 1674, + "id": 3161, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "10153:4:2", + "src": "10266:4:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -24675,15 +24675,15 @@ }, "value": "true" }, - "src": "10102:55:2", + "src": "10215:55:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1676, + "id": 3163, "nodeType": "ExpressionStatement", - "src": "10102:55:2" + "src": "10215:55:6" }, { "expression": { @@ -24696,18 +24696,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1680, + "id": 3167, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "10187:3:2", + "referencedDeclaration": 3702, + "src": "10300:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1681, + "id": 3168, "isConstant": false, "isLValue": false, "isPure": false, @@ -24715,7 +24715,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10187:10:2", + "src": "10300:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24723,12 +24723,12 @@ }, { "argumentTypes": null, - "id": 1682, + "id": 3169, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1645, - "src": "10199:6:2", + "referencedDeclaration": 3132, + "src": "10312:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24748,32 +24748,32 @@ ], "expression": { "argumentTypes": null, - "id": 1678, + "id": 3165, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "10172:5:2", + "referencedDeclaration": 2629, + "src": "10285:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 1679, + "id": 3166, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "10172:14:2", + "referencedDeclaration": 431, + "src": "10285:14:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 1683, + "id": 3170, "isConstant": false, "isLValue": false, "isPure": false, @@ -24781,7 +24781,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10172:34:2", + "src": "10285:34:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24795,21 +24795,21 @@ "typeString": "bool" } ], - "id": 1677, + "id": 3164, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "10164:7:2", + "referencedDeclaration": 3705, + "src": "10277:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1684, + "id": 3171, "isConstant": false, "isLValue": false, "isPure": false, @@ -24817,28 +24817,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10164:43:2", + "src": "10277:43:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1685, + "id": 3172, "nodeType": "ExpressionStatement", - "src": "10164:43:2" + "src": "10277:43:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1687, + "id": 3174, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1608, - "src": "10229:12:2", + "referencedDeclaration": 3095, + "src": "10347:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24846,12 +24846,12 @@ }, { "argumentTypes": null, - "id": 1688, + "id": 3175, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1645, - "src": "10243:6:2", + "referencedDeclaration": 3132, + "src": "10361:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24861,18 +24861,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1689, + "id": 3176, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3892, - "src": "10251:3:2", + "referencedDeclaration": 3702, + "src": "10369:3:6", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1690, + "id": 3177, "isConstant": false, "isLValue": false, "isPure": false, @@ -24880,7 +24880,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10251:10:2", + "src": "10369:10:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24902,18 +24902,18 @@ "typeString": "address" } ], - "id": 1686, + "id": 3173, "name": "_RewardClaimed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1103, - "src": "10214:14:2", + "referencedDeclaration": 2590, + "src": "10332:14:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_address_$returns$__$", "typeString": "function (uint256,uint256,address)" } }, - "id": 1691, + "id": 3178, "isConstant": false, "isLValue": false, "isPure": false, @@ -24921,20 +24921,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10214:48:2", + "src": "10332:48:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1692, - "nodeType": "ExpressionStatement", - "src": "10214:48:2" + "id": 3179, + "nodeType": "EmitStatement", + "src": "10327:53:6" } ] }, "documentation": "@dev Called by a voter to claim their reward for each completed vote. Someone\nmust call updateStatus() before this can be called.\n@param _challengeID The PLCR pollID of the challenge a reward is being claimed for\n@param _salt The salt of a voter's commit hash in the given poll", - "id": 1694, + "id": 3181, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -24942,16 +24942,16 @@ "name": "claimReward", "nodeType": "FunctionDefinition", "parameters": { - "id": 1611, + "id": 3098, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1608, + "id": 3095, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 1694, - "src": "9381:17:2", + "scope": 3181, + "src": "9494:17:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24959,10 +24959,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1607, + "id": 3094, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9381:4:2", + "src": "9494:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24973,11 +24973,11 @@ }, { "constant": false, - "id": 1610, + "id": 3097, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 1694, - "src": "9400:10:2", + "scope": 3181, + "src": "9513:10:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24985,10 +24985,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1609, + "id": 3096, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "9400:4:2", + "src": "9513:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24998,39 +24998,39 @@ "visibility": "internal" } ], - "src": "9380:31:2" + "src": "9493:31:6" }, "payable": false, "returnParameters": { - "id": 1612, + "id": 3099, "nodeType": "ParameterList", "parameters": [], - "src": "9419:0:2" + "src": "9532:0:6" }, - "scope": 2106, - "src": "9360:907:2", + "scope": 3593, + "src": "9473:912:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1735, + "id": 3222, "nodeType": "Block", - "src": "10822:258:2", + "src": "10940:258:6", "statements": [ { "assignments": [ - 1706 + 3193 ], "declarations": [ { "constant": false, - "id": 1706, + "id": 3193, "name": "totalTokens", "nodeType": "VariableDeclaration", - "scope": 1736, - "src": "10828:16:2", + "scope": 3223, + "src": "10946:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25038,10 +25038,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1705, + "id": 3192, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10828:4:2", + "src": "10946:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25051,33 +25051,33 @@ "visibility": "internal" } ], - "id": 1711, + "id": 3198, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1707, + "id": 3194, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "10847:10:2", + "referencedDeclaration": 2623, + "src": "10965:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1709, + "id": 3196, "indexExpression": { "argumentTypes": null, - "id": 1708, + "id": 3195, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "10858:12:2", + "referencedDeclaration": 3185, + "src": "10976:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25088,41 +25088,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10847:24:2", + "src": "10965:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1710, + "id": 3197, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "totalTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 1127, - "src": "10847:36:2", + "referencedDeclaration": 2614, + "src": "10965:36:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "10828:55:2" + "src": "10946:55:6" }, { "assignments": [ - 1713 + 3200 ], "declarations": [ { "constant": false, - "id": 1713, + "id": 3200, "name": "rewardPool", "nodeType": "VariableDeclaration", - "scope": 1736, - "src": "10889:15:2", + "scope": 3223, + "src": "11007:15:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25130,10 +25130,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1712, + "id": 3199, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10889:4:2", + "src": "11007:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25143,33 +25143,33 @@ "visibility": "internal" } ], - "id": 1718, + "id": 3205, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1714, + "id": 3201, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "10907:10:2", + "referencedDeclaration": 2623, + "src": "11025:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1716, + "id": 3203, "indexExpression": { "argumentTypes": null, - "id": 1715, + "id": 3202, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "10918:12:2", + "referencedDeclaration": 3185, + "src": "11036:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25180,41 +25180,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10907:24:2", + "src": "11025:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1717, + "id": 3204, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 1119, - "src": "10907:35:2", + "referencedDeclaration": 2606, + "src": "11025:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "10889:53:2" + "src": "11007:53:6" }, { "assignments": [ - 1720 + 3207 ], "declarations": [ { "constant": false, - "id": 1720, + "id": 3207, "name": "voterTokens", "nodeType": "VariableDeclaration", - "scope": 1736, - "src": "10948:16:2", + "scope": 3223, + "src": "11066:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25222,10 +25222,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1719, + "id": 3206, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10948:4:2", + "src": "11066:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25235,18 +25235,18 @@ "visibility": "internal" } ], - "id": 1727, + "id": 3214, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1723, + "id": 3210, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1696, - "src": "10994:6:2", + "referencedDeclaration": 3183, + "src": "11112:6:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25254,12 +25254,12 @@ }, { "argumentTypes": null, - "id": 1724, + "id": 3211, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1698, - "src": "11002:12:2", + "referencedDeclaration": 3185, + "src": "11120:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25267,12 +25267,12 @@ }, { "argumentTypes": null, - "id": 1725, + "id": 3212, "name": "_salt", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1700, - "src": "11016:5:2", + "referencedDeclaration": 3187, + "src": "11134:5:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25296,32 +25296,32 @@ ], "expression": { "argumentTypes": null, - "id": 1721, + "id": 3208, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "10967:6:2", + "referencedDeclaration": 2631, + "src": "11085:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1722, + "id": 3209, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getNumPassingTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 3065, - "src": "10967:26:2", + "referencedDeclaration": 1045, + "src": "11085:26:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (address,uint256,uint256) view external returns (uint256)" } }, - "id": 1726, + "id": 3213, "isConstant": false, "isLValue": false, "isPure": false, @@ -25329,14 +25329,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10967:55:2", + "src": "11085:55:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "10948:74:2" + "src": "11066:74:6" }, { "expression": { @@ -25345,7 +25345,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1733, + "id": 3220, "isConstant": false, "isLValue": false, "isPure": false, @@ -25359,19 +25359,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1730, + "id": 3217, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1728, + "id": 3215, "name": "voterTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1720, - "src": "11036:11:2", + "referencedDeclaration": 3207, + "src": "11154:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25381,32 +25381,32 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 1729, + "id": 3216, "name": "rewardPool", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1713, - "src": "11050:10:2", + "referencedDeclaration": 3200, + "src": "11168:10:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11036:24:2", + "src": "11154:24:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1731, + "id": 3218, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11035:26:2", + "src": "11153:26:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25416,32 +25416,32 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1732, + "id": 3219, "name": "totalTokens", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1706, - "src": "11064:11:2", + "referencedDeclaration": 3193, + "src": "11182:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11035:40:2", + "src": "11153:40:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1704, - "id": 1734, + "functionReturnParameters": 3191, + "id": 3221, "nodeType": "Return", - "src": "11028:47:2" + "src": "11146:47:6" } ] }, "documentation": "@dev Calculates the provided voter's token reward for the given poll.\n@param _voter The address of the voter whose reward balance is to be returned\n@param _challengeID The pollID of the challenge a reward balance is being queried for\n@param _salt The salt of the voter's commit hash in the given poll\n@return The uint indicating the voter's reward", - "id": 1736, + "id": 3223, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -25449,16 +25449,16 @@ "name": "voterReward", "nodeType": "FunctionDefinition", "parameters": { - "id": 1701, + "id": 3188, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1696, + "id": 3183, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 1736, - "src": "10744:14:2", + "scope": 3223, + "src": "10862:14:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25466,10 +25466,10 @@ "typeString": "address" }, "typeName": { - "id": 1695, + "id": 3182, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10744:7:2", + "src": "10862:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25480,11 +25480,11 @@ }, { "constant": false, - "id": 1698, + "id": 3185, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 1736, - "src": "10760:17:2", + "scope": 3223, + "src": "10878:17:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25492,10 +25492,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1697, + "id": 3184, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10760:4:2", + "src": "10878:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25506,11 +25506,11 @@ }, { "constant": false, - "id": 1700, + "id": 3187, "name": "_salt", "nodeType": "VariableDeclaration", - "scope": 1736, - "src": "10779:10:2", + "scope": 3223, + "src": "10897:10:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25518,10 +25518,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1699, + "id": 3186, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10779:4:2", + "src": "10897:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25531,20 +25531,20 @@ "visibility": "internal" } ], - "src": "10743:47:2" + "src": "10861:47:6" }, "payable": false, "returnParameters": { - "id": 1704, + "id": 3191, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1703, + "id": 3190, "name": "", "nodeType": "VariableDeclaration", - "scope": 1736, - "src": "10814:4:2", + "scope": 3223, + "src": "10932:4:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25552,10 +25552,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1702, + "id": 3189, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "10814:4:2", + "src": "10932:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25565,32 +25565,32 @@ "visibility": "internal" } ], - "src": "10813:6:2" + "src": "10931:6:6" }, - "scope": 2106, - "src": "10723:357:2", + "scope": 3593, + "src": "10841:357:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1783, + "id": 3270, "nodeType": "Block", - "src": "11318:631:2", + "src": "11436:629:6", "statements": [ { "assignments": [ - 1744 + 3231 ], "declarations": [ { "constant": false, - "id": 1744, + "id": 3231, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1784, - "src": "11324:16:2", + "scope": 3271, + "src": "11442:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25598,10 +25598,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1743, + "id": 3230, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "11324:4:2", + "src": "11442:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25611,33 +25611,33 @@ "visibility": "internal" } ], - "id": 1749, + "id": 3236, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1745, + "id": 3232, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "11343:8:2", + "referencedDeclaration": 2627, + "src": "11461:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1747, + "id": 3234, "indexExpression": { "argumentTypes": null, - "id": 1746, + "id": 3233, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1738, - "src": "11352:12:2", + "referencedDeclaration": 3225, + "src": "11470:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25648,28 +25648,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11343:22:2", + "src": "11461:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1748, + "id": 3235, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "11343:34:2", + "referencedDeclaration": 2603, + "src": "11461:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11324:53:2" + "src": "11442:53:6" }, { "condition": { @@ -25678,7 +25678,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1776, + "id": 3263, "isConstant": false, "isLValue": false, "isPure": false, @@ -25689,7 +25689,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1764, + "id": 3251, "isConstant": false, "isLValue": false, "isPure": false, @@ -25700,7 +25700,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1759, + "id": 3246, "isConstant": false, "isLValue": false, "isPure": false, @@ -25710,12 +25710,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1751, + "id": 3238, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1738, - "src": "11650:12:2", + "referencedDeclaration": 3225, + "src": "11768:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25729,18 +25729,18 @@ "typeString": "bytes32" } ], - "id": 1750, + "id": 3237, "name": "appWasMade", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1812, - "src": "11639:10:2", + "referencedDeclaration": 3299, + "src": "11757:10:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1752, + "id": 3239, "isConstant": false, "isLValue": false, "isPure": false, @@ -25748,7 +25748,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11639:24:2", + "src": "11757:24:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25762,7 +25762,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1758, + "id": 3245, "isConstant": false, "isLValue": false, "isPure": false, @@ -25773,26 +25773,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1753, + "id": 3240, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "11710:8:2", + "referencedDeclaration": 2627, + "src": "11828:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1755, + "id": 3242, "indexExpression": { "argumentTypes": null, - "id": 1754, + "id": 3241, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1738, - "src": "11719:12:2", + "referencedDeclaration": 3225, + "src": "11837:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25803,21 +25803,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11710:22:2", + "src": "11828:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1756, + "id": 3243, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "applicationExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 1108, - "src": "11710:40:2", + "referencedDeclaration": 2595, + "src": "11828:40:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25827,24 +25827,24 @@ "operator": "<", "rightExpression": { "argumentTypes": null, - "id": 1757, + "id": 3244, "name": "now", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3894, - "src": "11753:3:2", + "referencedDeclaration": 3704, + "src": "11871:3:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11710:46:2", + "src": "11828:46:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "11639:117:2", + "src": "11757:117:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25854,7 +25854,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 1763, + "id": 3250, "isConstant": false, "isLValue": false, "isPure": false, @@ -25862,18 +25862,18 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "11803:28:2", + "src": "11921:28:6", "subExpression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1761, + "id": 3248, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1738, - "src": "11818:12:2", + "referencedDeclaration": 3225, + "src": "11936:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25887,18 +25887,18 @@ "typeString": "bytes32" } ], - "id": 1760, + "id": 3247, "name": "isWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1797, - "src": "11804:13:2", + "referencedDeclaration": 3284, + "src": "11922:13:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1762, + "id": 3249, "isConstant": false, "isLValue": false, "isPure": false, @@ -25906,7 +25906,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11804:27:2", + "src": "11922:27:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25917,7 +25917,7 @@ "typeString": "bool" } }, - "src": "11639:192:2", + "src": "11757:192:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25934,7 +25934,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1774, + "id": 3261, "isConstant": false, "isLValue": false, "isPure": false, @@ -25945,19 +25945,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1767, + "id": 3254, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1765, + "id": 3252, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1744, - "src": "11842:11:2", + "referencedDeclaration": 3231, + "src": "11960:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25968,14 +25968,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1766, + "id": 3253, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11857:1:2", + "src": "11975:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -25983,7 +25983,7 @@ }, "value": "0" }, - "src": "11842:16:2", + "src": "11960:16:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25997,7 +25997,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1773, + "id": 3260, "isConstant": false, "isLValue": false, "isPure": false, @@ -26008,26 +26008,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1768, + "id": 3255, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "11862:10:2", + "referencedDeclaration": 2623, + "src": "11980:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1770, + "id": 3257, "indexExpression": { "argumentTypes": null, - "id": 1769, + "id": 3256, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1744, - "src": "11873:11:2", + "referencedDeclaration": 3231, + "src": "11991:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26038,21 +26038,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11862:23:2", + "src": "11980:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1771, + "id": 3258, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 1123, - "src": "11862:32:2", + "referencedDeclaration": 2610, + "src": "11980:32:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26063,14 +26063,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "74727565", - "id": 1772, + "id": 3259, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "11898:4:2", + "src": "12016:4:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -26078,59 +26078,59 @@ }, "value": "true" }, - "src": "11862:40:2", + "src": "11980:40:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "11842:60:2", + "src": "11960:60:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 1775, + "id": 3262, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "11841:62:2", + "src": "11959:62:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "11639:264:2", + "src": "11757:264:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1780, + "id": 3267, "nodeType": "IfStatement", - "src": "11591:335:2", + "src": "11709:333:6", "trueBody": { - "id": 1779, + "id": 3266, "nodeType": "Block", - "src": "11910:16:2", + "src": "12028:14:6", "statements": [ { "expression": { "argumentTypes": null, "hexValue": "74727565", - "id": 1777, + "id": 3264, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "11919:4:2", + "src": "12036:4:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -26138,10 +26138,10 @@ }, "value": "true" }, - "functionReturnParameters": 1742, - "id": 1778, + "functionReturnParameters": 3229, + "id": 3265, "nodeType": "Return", - "src": "11912:11:2" + "src": "12029:11:6" } ] } @@ -26150,14 +26150,14 @@ "expression": { "argumentTypes": null, "hexValue": "66616c7365", - "id": 1781, + "id": 3268, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "11939:5:2", + "src": "12055:5:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -26165,15 +26165,15 @@ }, "value": "false" }, - "functionReturnParameters": 1742, - "id": 1782, + "functionReturnParameters": 3229, + "id": 3269, "nodeType": "Return", - "src": "11932:12:2" + "src": "12048:12:6" } ] }, "documentation": "@dev Determines whether the given listingHash be whitelisted.\n@param _listingHash The listingHash whose status is to be examined", - "id": 1784, + "id": 3271, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -26181,16 +26181,16 @@ "name": "canBeWhitelisted", "nodeType": "FunctionDefinition", "parameters": { - "id": 1739, + "id": 3226, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1738, + "id": 3225, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1784, - "src": "11269:20:2", + "scope": 3271, + "src": "11387:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26198,10 +26198,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1737, + "id": 3224, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "11269:7:2", + "src": "11387:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -26211,20 +26211,20 @@ "visibility": "internal" } ], - "src": "11268:22:2" + "src": "11386:22:6" }, "payable": false, "returnParameters": { - "id": 1742, + "id": 3229, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1741, + "id": 3228, "name": "", "nodeType": "VariableDeclaration", - "scope": 1784, - "src": "11312:4:2", + "scope": 3271, + "src": "11430:4:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26232,10 +26232,10 @@ "typeString": "bool" }, "typeName": { - "id": 1740, + "id": 3227, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "11312:4:2", + "src": "11430:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26245,19 +26245,19 @@ "visibility": "internal" } ], - "src": "11311:6:2" + "src": "11429:6:6" }, - "scope": 2106, - "src": "11243:706:2", + "scope": 3593, + "src": "11361:704:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1796, + "id": 3283, "nodeType": "Block", - "src": "12195:52:2", + "src": "12311:52:6", "statements": [ { "expression": { @@ -26266,26 +26266,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1791, + "id": 3278, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "12208:8:2", + "referencedDeclaration": 2627, + "src": "12324:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1793, + "id": 3280, "indexExpression": { "argumentTypes": null, - "id": 1792, + "id": 3279, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1786, - "src": "12217:12:2", + "referencedDeclaration": 3273, + "src": "12333:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -26296,35 +26296,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12208:22:2", + "src": "12324:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1794, + "id": 3281, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "whitelisted", "nodeType": "MemberAccess", - "referencedDeclaration": 1110, - "src": "12208:34:2", + "referencedDeclaration": 2597, + "src": "12324:34:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1790, - "id": 1795, + "functionReturnParameters": 3277, + "id": 3282, "nodeType": "Return", - "src": "12201:41:2" + "src": "12317:41:6" } ] }, "documentation": "@dev Returns true if the provided listingHash is whitelisted\n@param _listingHash The listingHash whose status is to be examined", - "id": 1797, + "id": 3284, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -26332,16 +26332,16 @@ "name": "isWhitelisted", "nodeType": "FunctionDefinition", "parameters": { - "id": 1787, + "id": 3274, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1786, + "id": 3273, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "12134:20:2", + "scope": 3284, + "src": "12250:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26349,10 +26349,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1785, + "id": 3272, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "12134:7:2", + "src": "12250:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -26362,20 +26362,20 @@ "visibility": "internal" } ], - "src": "12133:22:2" + "src": "12249:22:6" }, "payable": false, "returnParameters": { - "id": 1790, + "id": 3277, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1789, + "id": 3276, "name": "whitelisted", "nodeType": "VariableDeclaration", - "scope": 1797, - "src": "12177:16:2", + "scope": 3284, + "src": "12293:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26383,10 +26383,10 @@ "typeString": "bool" }, "typeName": { - "id": 1788, + "id": 3275, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "12177:4:2", + "src": "12293:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26396,19 +26396,19 @@ "visibility": "internal" } ], - "src": "12176:18:2" + "src": "12292:18:6" }, - "scope": 2106, - "src": "12111:136:2", + "scope": 3593, + "src": "12227:136:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1811, + "id": 3298, "nodeType": "Block", - "src": "12483:62:2", + "src": "12599:62:6", "statements": [ { "expression": { @@ -26417,7 +26417,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1809, + "id": 3296, "isConstant": false, "isLValue": false, "isPure": false, @@ -26428,26 +26428,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1804, + "id": 3291, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "12496:8:2", + "referencedDeclaration": 2627, + "src": "12612:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1806, + "id": 3293, "indexExpression": { "argumentTypes": null, - "id": 1805, + "id": 3292, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1799, - "src": "12505:12:2", + "referencedDeclaration": 3286, + "src": "12621:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -26458,21 +26458,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12496:22:2", + "src": "12612:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1807, + "id": 3294, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "applicationExpiry", "nodeType": "MemberAccess", - "referencedDeclaration": 1108, - "src": "12496:40:2", + "referencedDeclaration": 2595, + "src": "12612:40:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26483,14 +26483,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1808, + "id": 3295, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12539:1:2", + "src": "12655:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -26498,21 +26498,21 @@ }, "value": "0" }, - "src": "12496:44:2", + "src": "12612:44:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1803, - "id": 1810, + "functionReturnParameters": 3290, + "id": 3297, "nodeType": "Return", - "src": "12489:51:2" + "src": "12605:51:6" } ] }, "documentation": "@dev Returns true if apply was called for this listingHash\n@param _listingHash The listingHash whose status is to be examined", - "id": 1812, + "id": 3299, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -26520,16 +26520,16 @@ "name": "appWasMade", "nodeType": "FunctionDefinition", "parameters": { - "id": 1800, + "id": 3287, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1799, + "id": 3286, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1812, - "src": "12427:20:2", + "scope": 3299, + "src": "12543:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26537,10 +26537,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1798, + "id": 3285, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "12427:7:2", + "src": "12543:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -26550,20 +26550,20 @@ "visibility": "internal" } ], - "src": "12426:22:2" + "src": "12542:22:6" }, "payable": false, "returnParameters": { - "id": 1803, + "id": 3290, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1802, + "id": 3289, "name": "exists", "nodeType": "VariableDeclaration", - "scope": 1812, - "src": "12470:11:2", + "scope": 3299, + "src": "12586:11:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26571,10 +26571,10 @@ "typeString": "bool" }, "typeName": { - "id": 1801, + "id": 3288, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "12470:4:2", + "src": "12586:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26584,32 +26584,32 @@ "visibility": "internal" } ], - "src": "12469:13:2" + "src": "12585:13:6" }, - "scope": 2106, - "src": "12407:138:2", + "scope": 3593, + "src": "12523:138:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1840, + "id": 3327, "nodeType": "Block", - "src": "12797:155:2", + "src": "12913:155:6", "statements": [ { "assignments": [ - 1820 + 3307 ], "declarations": [ { "constant": false, - "id": 1820, + "id": 3307, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1841, - "src": "12803:16:2", + "scope": 3328, + "src": "12919:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26617,10 +26617,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1819, + "id": 3306, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "12803:4:2", + "src": "12919:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26630,33 +26630,33 @@ "visibility": "internal" } ], - "id": 1825, + "id": 3312, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1821, + "id": 3308, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "12822:8:2", + "referencedDeclaration": 2627, + "src": "12938:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1823, + "id": 3310, "indexExpression": { "argumentTypes": null, - "id": 1822, + "id": 3309, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1814, - "src": "12831:12:2", + "referencedDeclaration": 3301, + "src": "12947:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -26667,28 +26667,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12822:22:2", + "src": "12938:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1824, + "id": 3311, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "12822:34:2", + "referencedDeclaration": 2603, + "src": "12938:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12803:53:2" + "src": "12919:53:6" }, { "expression": { @@ -26700,7 +26700,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1837, + "id": 3324, "isConstant": false, "isLValue": false, "isPure": false, @@ -26711,7 +26711,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1831, + "id": 3318, "isConstant": false, "isLValue": false, "isPure": false, @@ -26722,26 +26722,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1826, + "id": 3313, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "12871:8:2", + "referencedDeclaration": 2627, + "src": "12987:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1828, + "id": 3315, "indexExpression": { "argumentTypes": null, - "id": 1827, + "id": 3314, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1814, - "src": "12880:12:2", + "referencedDeclaration": 3301, + "src": "12996:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -26752,21 +26752,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12871:22:2", + "src": "12987:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1829, + "id": 3316, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "12871:34:2", + "referencedDeclaration": 2603, + "src": "12987:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26777,14 +26777,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1830, + "id": 3317, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12908:1:2", + "src": "13024:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -26792,7 +26792,7 @@ }, "value": "0" }, - "src": "12871:38:2", + "src": "12987:38:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26802,7 +26802,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 1836, + "id": 3323, "isConstant": false, "isLValue": false, "isPure": false, @@ -26810,33 +26810,33 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "12913:33:2", + "src": "13029:33:6", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1832, + "id": 3319, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "12914:10:2", + "referencedDeclaration": 2623, + "src": "13030:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1834, + "id": 3321, "indexExpression": { "argumentTypes": null, - "id": 1833, + "id": 3320, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1820, - "src": "12925:11:2", + "referencedDeclaration": 3307, + "src": "13041:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26847,21 +26847,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12914:23:2", + "src": "13030:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1835, + "id": 3322, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 1123, - "src": "12914:32:2", + "referencedDeclaration": 2610, + "src": "13030:32:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26872,35 +26872,35 @@ "typeString": "bool" } }, - "src": "12871:75:2", + "src": "12987:75:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } } ], - "id": 1838, + "id": 3325, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "12870:77:2", + "src": "12986:77:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1818, - "id": 1839, + "functionReturnParameters": 3305, + "id": 3326, "nodeType": "Return", - "src": "12863:84:2" + "src": "12979:84:6" } ] }, "documentation": "@dev Returns true if the application/listingHash has an unresolved challenge\n@param _listingHash The listingHash whose status is to be examined", - "id": 1841, + "id": 3328, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -26908,16 +26908,16 @@ "name": "challengeExists", "nodeType": "FunctionDefinition", "parameters": { - "id": 1815, + "id": 3302, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1814, + "id": 3301, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1841, - "src": "12748:20:2", + "scope": 3328, + "src": "12864:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26925,10 +26925,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1813, + "id": 3300, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "12748:7:2", + "src": "12864:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -26938,20 +26938,20 @@ "visibility": "internal" } ], - "src": "12747:22:2" + "src": "12863:22:6" }, "payable": false, "returnParameters": { - "id": 1818, + "id": 3305, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1817, + "id": 3304, "name": "", "nodeType": "VariableDeclaration", - "scope": 1841, - "src": "12791:4:2", + "scope": 3328, + "src": "12907:4:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26959,10 +26959,10 @@ "typeString": "bool" }, "typeName": { - "id": 1816, + "id": 3303, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "12791:4:2", + "src": "12907:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26972,32 +26972,32 @@ "visibility": "internal" } ], - "src": "12790:6:2" + "src": "12906:6:6" }, - "scope": 2106, - "src": "12723:229:2", + "scope": 3593, + "src": "12839:229:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1866, + "id": 3353, "nodeType": "Block", - "src": "13268:152:2", + "src": "13384:152:6", "statements": [ { "assignments": [ - 1849 + 3336 ], "declarations": [ { "constant": false, - "id": 1849, + "id": 3336, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 1867, - "src": "13274:16:2", + "scope": 3354, + "src": "13390:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27005,10 +27005,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1848, + "id": 3335, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "13274:4:2", + "src": "13390:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27018,33 +27018,33 @@ "visibility": "internal" } ], - "id": 1854, + "id": 3341, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1850, + "id": 3337, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "13293:8:2", + "referencedDeclaration": 2627, + "src": "13409:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1852, + "id": 3339, "indexExpression": { "argumentTypes": null, - "id": 1851, + "id": 3338, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1843, - "src": "13302:12:2", + "referencedDeclaration": 3330, + "src": "13418:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -27055,28 +27055,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13293:22:2", + "src": "13409:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1853, + "id": 3340, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "13293:34:2", + "referencedDeclaration": 2603, + "src": "13409:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "13274:53:2" + "src": "13390:53:6" }, { "expression": { @@ -27087,12 +27087,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1857, + "id": 3344, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1843, - "src": "13358:12:2", + "referencedDeclaration": 3330, + "src": "13474:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -27106,18 +27106,18 @@ "typeString": "bytes32" } ], - "id": 1856, + "id": 3343, "name": "challengeExists", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1841, - "src": "13342:15:2", + "referencedDeclaration": 3328, + "src": "13458:15:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_bytes32_$returns$_t_bool_$", "typeString": "function (bytes32) view returns (bool)" } }, - "id": 1858, + "id": 3345, "isConstant": false, "isLValue": false, "isPure": false, @@ -27125,7 +27125,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13342:29:2", + "src": "13458:29:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -27139,21 +27139,21 @@ "typeString": "bool" } ], - "id": 1855, + "id": 3342, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "13334:7:2", + "referencedDeclaration": 3705, + "src": "13450:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1859, + "id": 3346, "isConstant": false, "isLValue": false, "isPure": false, @@ -27161,15 +27161,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13334:38:2", + "src": "13450:38:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1860, + "id": 3347, "nodeType": "ExpressionStatement", - "src": "13334:38:2" + "src": "13450:38:6" }, { "expression": { @@ -27177,12 +27177,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1863, + "id": 3350, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1849, - "src": "13403:11:2", + "referencedDeclaration": 3336, + "src": "13519:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27198,32 +27198,32 @@ ], "expression": { "argumentTypes": null, - "id": 1861, + "id": 3348, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "13386:6:2", + "referencedDeclaration": 2631, + "src": "13502:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1862, + "id": 3349, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "pollEnded", "nodeType": "MemberAccess", - "referencedDeclaration": 3207, - "src": "13386:16:2", + "referencedDeclaration": 1187, + "src": "13502:16:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view external returns (bool)" } }, - "id": 1864, + "id": 3351, "isConstant": false, "isLValue": false, "isPure": false, @@ -27231,21 +27231,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13386:29:2", + "src": "13502:29:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1847, - "id": 1865, + "functionReturnParameters": 3334, + "id": 3352, "nodeType": "Return", - "src": "13379:36:2" + "src": "13495:36:6" } ] }, "documentation": "@dev Determines whether voting has concluded in a challenge for a given\nlistingHash. Throws if no challenge exists.\n@param _listingHash A listingHash with an unresolved challenge", - "id": 1867, + "id": 3354, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -27253,16 +27253,16 @@ "name": "challengeCanBeResolved", "nodeType": "FunctionDefinition", "parameters": { - "id": 1844, + "id": 3331, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1843, + "id": 3330, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 1867, - "src": "13219:20:2", + "scope": 3354, + "src": "13335:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27270,10 +27270,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1842, + "id": 3329, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "13219:7:2", + "src": "13335:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -27283,20 +27283,20 @@ "visibility": "internal" } ], - "src": "13218:22:2" + "src": "13334:22:6" }, "payable": false, "returnParameters": { - "id": 1847, + "id": 3334, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1846, + "id": 3333, "name": "", "nodeType": "VariableDeclaration", - "scope": 1867, - "src": "13262:4:2", + "scope": 3354, + "src": "13378:4:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27304,10 +27304,10 @@ "typeString": "bool" }, "typeName": { - "id": 1845, + "id": 3332, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13262:4:2", + "src": "13378:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -27317,19 +27317,19 @@ "visibility": "internal" } ], - "src": "13261:6:2" + "src": "13377:6:6" }, - "scope": 2106, - "src": "13187:233:2", + "scope": 3593, + "src": "13303:233:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1915, + "id": 3402, "nodeType": "Block", - "src": "13669:375:2", + "src": "13785:375:6", "statements": [ { "expression": { @@ -27341,14 +27341,14 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1884, + "id": 3371, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1879, + "id": 3366, "isConstant": false, "isLValue": false, "isPure": false, @@ -27356,33 +27356,33 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "13683:34:2", + "src": "13799:34:6", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1875, + "id": 3362, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "13684:10:2", + "referencedDeclaration": 2623, + "src": "13800:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1877, + "id": 3364, "indexExpression": { "argumentTypes": null, - "id": 1876, + "id": 3363, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, - "src": "13695:12:2", + "referencedDeclaration": 3356, + "src": "13811:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27393,21 +27393,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13684:24:2", + "src": "13800:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1878, + "id": 3365, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 1123, - "src": "13684:33:2", + "referencedDeclaration": 2610, + "src": "13800:33:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -27425,12 +27425,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1882, + "id": 3369, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, - "src": "13738:12:2", + "referencedDeclaration": 3356, + "src": "13854:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27446,32 +27446,32 @@ ], "expression": { "argumentTypes": null, - "id": 1880, + "id": 3367, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "13721:6:2", + "referencedDeclaration": 2631, + "src": "13837:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1881, + "id": 3368, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "pollEnded", "nodeType": "MemberAccess", - "referencedDeclaration": 3207, - "src": "13721:16:2", + "referencedDeclaration": 1187, + "src": "13837:16:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view external returns (bool)" } }, - "id": 1883, + "id": 3370, "isConstant": false, "isLValue": false, "isPure": false, @@ -27479,13 +27479,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13721:30:2", + "src": "13837:30:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "13683:68:2", + "src": "13799:68:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -27499,21 +27499,21 @@ "typeString": "bool" } ], - "id": 1874, + "id": 3361, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "13675:7:2", + "referencedDeclaration": 3705, + "src": "13791:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1885, + "id": 3372, "isConstant": false, "isLValue": false, "isPure": false, @@ -27521,15 +27521,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13675:77:2", + "src": "13791:77:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1886, + "id": 3373, "nodeType": "ExpressionStatement", - "src": "13675:77:2" + "src": "13791:77:6" }, { "condition": { @@ -27538,7 +27538,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1892, + "id": 3379, "isConstant": false, "isLValue": false, "isPure": false, @@ -27548,12 +27548,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1889, + "id": 3376, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, - "src": "13876:12:2", + "referencedDeclaration": 3356, + "src": "13992:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27569,32 +27569,32 @@ ], "expression": { "argumentTypes": null, - "id": 1887, + "id": 3374, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "13830:6:2", + "referencedDeclaration": 2631, + "src": "13946:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1888, + "id": 3375, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getTotalNumberOfTokensForWinningOption", "nodeType": "MemberAccess", - "referencedDeclaration": 3186, - "src": "13830:45:2", + "referencedDeclaration": 1166, + "src": "13946:45:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256) view external returns (uint256)" } }, - "id": 1890, + "id": 3377, "isConstant": false, "isLValue": false, "isPure": false, @@ -27602,7 +27602,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13830:59:2", + "src": "13946:59:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27613,14 +27613,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1891, + "id": 3378, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13893:1:2", + "src": "14009:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -27628,20 +27628,20 @@ }, "value": "0" }, - "src": "13830:64:2", + "src": "13946:64:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1901, + "id": 3388, "nodeType": "IfStatement", - "src": "13826:126:2", + "src": "13942:126:6", "trueBody": { - "id": 1900, + "id": 3387, "nodeType": "Block", - "src": "13896:56:2", + "src": "14012:56:6", "statements": [ { "expression": { @@ -27650,7 +27650,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1898, + "id": 3385, "isConstant": false, "isLValue": false, "isPure": false, @@ -27658,14 +27658,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "32", - "id": 1893, + "id": 3380, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13911:1:2", + "src": "14027:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", @@ -27681,26 +27681,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1894, + "id": 3381, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "13915:10:2", + "referencedDeclaration": 2623, + "src": "14031:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1896, + "id": 3383, "indexExpression": { "argumentTypes": null, - "id": 1895, + "id": 3382, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, - "src": "13926:12:2", + "referencedDeclaration": 3356, + "src": "14042:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27711,36 +27711,36 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13915:24:2", + "src": "14031:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1897, + "id": 3384, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "stake", "nodeType": "MemberAccess", - "referencedDeclaration": 1125, - "src": "13915:30:2", + "referencedDeclaration": 2612, + "src": "14031:30:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13911:34:2", + "src": "14027:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1873, - "id": 1899, + "functionReturnParameters": 3360, + "id": 3386, "nodeType": "Return", - "src": "13904:41:2" + "src": "14020:41:6" } ] } @@ -27752,7 +27752,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1913, + "id": 3400, "isConstant": false, "isLValue": false, "isPure": false, @@ -27766,7 +27766,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1907, + "id": 3394, "isConstant": false, "isLValue": false, "isPure": false, @@ -27774,14 +27774,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "32", - "id": 1902, + "id": 3389, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13966:1:2", + "src": "14082:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_2_by_1", @@ -27797,26 +27797,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1903, + "id": 3390, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "13970:10:2", + "referencedDeclaration": 2623, + "src": "14086:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1905, + "id": 3392, "indexExpression": { "argumentTypes": null, - "id": 1904, + "id": 3391, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, - "src": "13981:12:2", + "referencedDeclaration": 3356, + "src": "14097:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27827,41 +27827,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "13970:24:2", + "src": "14086:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1906, + "id": 3393, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "stake", "nodeType": "MemberAccess", - "referencedDeclaration": 1125, - "src": "13970:30:2", + "referencedDeclaration": 2612, + "src": "14086:30:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13966:34:2", + "src": "14082:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1908, + "id": 3395, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "13965:36:2", + "src": "14081:36:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27875,26 +27875,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1909, + "id": 3396, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "14004:10:2", + "referencedDeclaration": 2623, + "src": "14120:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1911, + "id": 3398, "indexExpression": { "argumentTypes": null, - "id": 1910, + "id": 3397, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1869, - "src": "14015:12:2", + "referencedDeclaration": 3356, + "src": "14131:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27905,41 +27905,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14004:24:2", + "src": "14120:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1912, + "id": 3399, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 1119, - "src": "14004:35:2", + "referencedDeclaration": 2606, + "src": "14120:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13965:74:2", + "src": "14081:74:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1873, - "id": 1914, + "functionReturnParameters": 3360, + "id": 3401, "nodeType": "Return", - "src": "13958:81:2" + "src": "14074:81:6" } ] }, "documentation": "@dev Determines the number of tokens awarded to the winning party in a challenge.\n@param _challengeID The challengeID to determine a reward for", - "id": 1916, + "id": 3403, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -27947,16 +27947,16 @@ "name": "determineReward", "nodeType": "FunctionDefinition", "parameters": { - "id": 1870, + "id": 3357, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1869, + "id": 3356, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 1916, - "src": "13623:17:2", + "scope": 3403, + "src": "13739:17:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27964,10 +27964,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1868, + "id": 3355, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "13623:4:2", + "src": "13739:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27977,20 +27977,20 @@ "visibility": "internal" } ], - "src": "13622:19:2" + "src": "13738:19:6" }, "payable": false, "returnParameters": { - "id": 1873, + "id": 3360, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1872, + "id": 3359, "name": "", "nodeType": "VariableDeclaration", - "scope": 1916, - "src": "13663:4:2", + "scope": 3403, + "src": "13779:4:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27998,10 +27998,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1871, + "id": 3358, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "13663:4:2", + "src": "13779:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28011,19 +28011,19 @@ "visibility": "internal" } ], - "src": "13662:6:2" + "src": "13778:6:6" }, - "scope": 2106, - "src": "13598:446:2", + "scope": 3593, + "src": "13714:446:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1932, + "id": 3419, "nodeType": "Block", - "src": "14342:62:2", + "src": "14458:62:6", "statements": [ { "expression": { @@ -28034,26 +28034,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1925, + "id": 3412, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "14355:10:2", + "referencedDeclaration": 2623, + "src": "14471:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1927, + "id": 3414, "indexExpression": { "argumentTypes": null, - "id": 1926, + "id": 3413, "name": "_challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1918, - "src": "14366:12:2", + "referencedDeclaration": 3405, + "src": "14482:12:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28064,35 +28064,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14355:24:2", + "src": "14471:24:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1928, + "id": 3415, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokenClaims", "nodeType": "MemberAccess", - "referencedDeclaration": 1131, - "src": "14355:36:2", + "referencedDeclaration": 2618, + "src": "14471:36:6", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", "typeString": "mapping(address => bool)" } }, - "id": 1930, + "id": 3417, "indexExpression": { "argumentTypes": null, - "id": 1929, + "id": 3416, "name": "_voter", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1920, - "src": "14392:6:2", + "referencedDeclaration": 3407, + "src": "14508:6:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28103,21 +28103,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14355:44:2", + "src": "14471:44:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "functionReturnParameters": 1924, - "id": 1931, + "functionReturnParameters": 3411, + "id": 3418, "nodeType": "Return", - "src": "14348:51:2" + "src": "14464:51:6" } ] }, "documentation": "@dev Getter for Challenge tokenClaims mappings\n@param _challengeID The challengeID to query\n@param _voter The voter whose claim status to query for the provided challengeID", - "id": 1933, + "id": 3420, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -28125,16 +28125,16 @@ "name": "tokenClaims", "nodeType": "FunctionDefinition", "parameters": { - "id": 1921, + "id": 3408, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1918, + "id": 3405, "name": "_challengeID", "nodeType": "VariableDeclaration", - "scope": 1933, - "src": "14280:17:2", + "scope": 3420, + "src": "14396:17:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28142,10 +28142,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1917, + "id": 3404, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "14280:4:2", + "src": "14396:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28156,11 +28156,11 @@ }, { "constant": false, - "id": 1920, + "id": 3407, "name": "_voter", "nodeType": "VariableDeclaration", - "scope": 1933, - "src": "14299:14:2", + "scope": 3420, + "src": "14415:14:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28168,10 +28168,10 @@ "typeString": "address" }, "typeName": { - "id": 1919, + "id": 3406, "name": "address", "nodeType": "ElementaryTypeName", - "src": "14299:7:2", + "src": "14415:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28181,20 +28181,20 @@ "visibility": "internal" } ], - "src": "14279:35:2" + "src": "14395:35:6" }, "payable": false, "returnParameters": { - "id": 1924, + "id": 3411, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1923, + "id": 3410, "name": "", "nodeType": "VariableDeclaration", - "scope": 1933, - "src": "14336:4:2", + "scope": 3420, + "src": "14452:4:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28202,10 +28202,10 @@ "typeString": "bool" }, "typeName": { - "id": 1922, + "id": 3409, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "14336:4:2", + "src": "14452:4:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -28215,32 +28215,32 @@ "visibility": "internal" } ], - "src": "14335:6:2" + "src": "14451:6:6" }, - "scope": 2106, - "src": "14259:145:2", + "scope": 3593, + "src": "14375:145:6", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 2027, + "id": 3514, "nodeType": "Block", - "src": "14784:1218:2", + "src": "14900:1308:6", "statements": [ { "assignments": [ - 1939 + 3426 ], "declarations": [ { "constant": false, - "id": 1939, + "id": 3426, "name": "challengeID", "nodeType": "VariableDeclaration", - "scope": 2028, - "src": "14790:16:2", + "scope": 3515, + "src": "14906:16:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28248,10 +28248,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1938, + "id": 3425, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "14790:4:2", + "src": "14906:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28261,33 +28261,33 @@ "visibility": "internal" } ], - "id": 1944, + "id": 3431, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1940, + "id": 3427, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "14809:8:2", + "referencedDeclaration": 2627, + "src": "14925:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1942, + "id": 3429, "indexExpression": { "argumentTypes": null, - "id": 1941, + "id": 3428, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1935, - "src": "14818:12:2", + "referencedDeclaration": 3422, + "src": "14934:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -28298,41 +28298,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "14809:22:2", + "src": "14925:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1943, + "id": 3430, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challengeID", "nodeType": "MemberAccess", - "referencedDeclaration": 1116, - "src": "14809:34:2", + "referencedDeclaration": 2603, + "src": "14925:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14790:53:2" + "src": "14906:53:6" }, { "assignments": [ - 1946 + 3433 ], "declarations": [ { "constant": false, - "id": 1946, + "id": 3433, "name": "reward", "nodeType": "VariableDeclaration", - "scope": 2028, - "src": "14964:11:2", + "scope": 3515, + "src": "15080:11:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28340,10 +28340,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1945, + "id": 3432, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "14964:4:2", + "src": "15080:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28353,18 +28353,18 @@ "visibility": "internal" } ], - "id": 1950, + "id": 3437, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1948, + "id": 3435, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "14994:11:2", + "referencedDeclaration": 3426, + "src": "15110:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28378,18 +28378,18 @@ "typeString": "uint256" } ], - "id": 1947, + "id": 3434, "name": "determineReward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1916, - "src": "14978:15:2", + "referencedDeclaration": 3403, + "src": "15094:15:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256) view returns (uint256)" } }, - "id": 1949, + "id": 3436, "isConstant": false, "isLValue": false, "isPure": false, @@ -28397,19 +28397,19 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14978:28:2", + "src": "15094:28:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14964:42:2" + "src": "15080:42:6" }, { "expression": { "argumentTypes": null, - "id": 1956, + "id": 3443, "isConstant": false, "isLValue": false, "isPure": false, @@ -28420,26 +28420,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1951, + "id": 3438, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "15059:10:2", + "referencedDeclaration": 2623, + "src": "15175:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1953, + "id": 3440, "indexExpression": { "argumentTypes": null, - "id": 1952, + "id": 3439, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15070:11:2", + "referencedDeclaration": 3426, + "src": "15186:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28450,21 +28450,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15059:23:2", + "src": "15175:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1954, + "id": 3441, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "resolved", "nodeType": "MemberAccess", - "referencedDeclaration": 1123, - "src": "15059:32:2", + "referencedDeclaration": 2610, + "src": "15175:32:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -28475,14 +28475,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 1955, + "id": 3442, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "15094:4:2", + "src": "15210:4:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -28490,20 +28490,20 @@ }, "value": "true" }, - "src": "15059:39:2", + "src": "15175:39:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 1957, + "id": 3444, "nodeType": "ExpressionStatement", - "src": "15059:39:2" + "src": "15175:39:6" }, { "expression": { "argumentTypes": null, - "id": 1966, + "id": 3453, "isConstant": false, "isLValue": false, "isPure": false, @@ -28514,26 +28514,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1958, + "id": 3445, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "15192:10:2", + "referencedDeclaration": 2623, + "src": "15308:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1960, + "id": 3447, "indexExpression": { "argumentTypes": null, - "id": 1959, + "id": 3446, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15203:11:2", + "referencedDeclaration": 3426, + "src": "15319:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28544,21 +28544,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15192:23:2", + "src": "15308:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1961, + "id": 3448, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "totalTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 1127, - "src": "15192:35:2", + "referencedDeclaration": 2614, + "src": "15308:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28571,12 +28571,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1964, + "id": 3451, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15276:11:2", + "referencedDeclaration": 3426, + "src": "15392:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28592,32 +28592,32 @@ ], "expression": { "argumentTypes": null, - "id": 1962, + "id": 3449, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "15230:6:2", + "referencedDeclaration": 2631, + "src": "15346:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1963, + "id": 3450, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "getTotalNumberOfTokensForWinningOption", "nodeType": "MemberAccess", - "referencedDeclaration": 3186, - "src": "15230:45:2", + "referencedDeclaration": 1166, + "src": "15346:45:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256) view external returns (uint256)" } }, - "id": 1965, + "id": 3452, "isConstant": false, "isLValue": false, "isPure": false, @@ -28625,21 +28625,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15230:58:2", + "src": "15346:58:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "15192:96:2", + "src": "15308:96:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1967, + "id": 3454, "nodeType": "ExpressionStatement", - "src": "15192:96:2" + "src": "15308:96:6" }, { "condition": { @@ -28647,12 +28647,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1970, + "id": 3457, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15345:11:2", + "referencedDeclaration": 3426, + "src": "15461:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28668,32 +28668,32 @@ ], "expression": { "argumentTypes": null, - "id": 1968, + "id": 3455, "name": "voting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1144, - "src": "15329:6:2", + "referencedDeclaration": 2631, + "src": "15445:6:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_PLCRVoting_$3488", + "typeIdentifier": "t_contract$_PLCRVoting_$1471", "typeString": "contract PLCRVoting" } }, - "id": 1969, + "id": 3456, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "isPassed", "nodeType": "MemberAccess", - "referencedDeclaration": 3158, - "src": "15329:15:2", + "referencedDeclaration": 1138, + "src": "15445:15:6", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_uint256_$returns$_t_bool_$", "typeString": "function (uint256) view external returns (bool)" } }, - "id": 1971, + "id": 3458, "isConstant": false, "isLValue": false, "isPure": false, @@ -28701,16 +28701,16 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15329:28:2", + "src": "15445:28:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 2025, + "id": 3512, "nodeType": "Block", - "src": "15662:336:2", + "src": "15823:381:6", "statements": [ { "expression": { @@ -28718,12 +28718,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1998, + "id": 3485, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1935, - "src": "15728:12:2", + "referencedDeclaration": 3422, + "src": "15889:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -28737,18 +28737,18 @@ "typeString": "bytes32" } ], - "id": 1997, + "id": 3484, "name": "resetListing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2105, - "src": "15715:12:2", + "referencedDeclaration": 3592, + "src": "15876:12:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1999, + "id": 3486, "isConstant": false, "isLValue": false, "isPure": false, @@ -28756,15 +28756,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15715:26:2", + "src": "15876:26:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2000, + "id": 3487, "nodeType": "ExpressionStatement", - "src": "15715:26:2" + "src": "15876:26:6" }, { "expression": { @@ -28779,26 +28779,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2004, + "id": 3491, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "15819:10:2", + "referencedDeclaration": 2623, + "src": "15980:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 2006, + "id": 3493, "indexExpression": { "argumentTypes": null, - "id": 2005, + "id": 3492, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15830:11:2", + "referencedDeclaration": 3426, + "src": "15991:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28809,21 +28809,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15819:23:2", + "src": "15980:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 2007, + "id": 3494, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "challenger", "nodeType": "MemberAccess", - "referencedDeclaration": 1121, - "src": "15819:34:2", + "referencedDeclaration": 2608, + "src": "15980:34:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28831,12 +28831,12 @@ }, { "argumentTypes": null, - "id": 2008, + "id": 3495, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1946, - "src": "15855:6:2", + "referencedDeclaration": 3433, + "src": "16016:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28856,32 +28856,32 @@ ], "expression": { "argumentTypes": null, - "id": 2002, + "id": 3489, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "15804:5:2", + "referencedDeclaration": 2629, + "src": "15965:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 2003, + "id": 3490, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "15804:14:2", + "referencedDeclaration": 431, + "src": "15965:14:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 2009, + "id": 3496, "isConstant": false, "isLValue": false, "isPure": false, @@ -28889,7 +28889,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15804:58:2", + "src": "15965:58:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -28903,21 +28903,21 @@ "typeString": "bool" } ], - "id": 2001, + "id": 3488, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "15796:7:2", + "referencedDeclaration": 3705, + "src": "15957:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2010, + "id": 3497, "isConstant": false, "isLValue": false, "isPure": false, @@ -28925,28 +28925,28 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15796:67:2", + "src": "15957:67:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2011, + "id": 3498, "nodeType": "ExpressionStatement", - "src": "15796:67:2" + "src": "15957:67:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2013, + "id": 3500, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1935, - "src": "15892:12:2", + "referencedDeclaration": 3422, + "src": "16067:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -28954,12 +28954,12 @@ }, { "argumentTypes": null, - "id": 2014, + "id": 3501, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15906:11:2", + "referencedDeclaration": 3426, + "src": "16089:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28971,26 +28971,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2015, + "id": 3502, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "15919:10:2", + "referencedDeclaration": 2623, + "src": "16110:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 2017, + "id": 3504, "indexExpression": { "argumentTypes": null, - "id": 2016, + "id": 3503, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15930:11:2", + "referencedDeclaration": 3426, + "src": "16121:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29001,21 +29001,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15919:23:2", + "src": "16110:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 2018, + "id": 3505, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 1119, - "src": "15919:34:2", + "referencedDeclaration": 2606, + "src": "16110:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29027,26 +29027,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2019, + "id": 3506, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "15955:10:2", + "referencedDeclaration": 2623, + "src": "16154:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 2021, + "id": 3508, "indexExpression": { "argumentTypes": null, - "id": 2020, + "id": 3507, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15966:11:2", + "referencedDeclaration": 3426, + "src": "16165:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29057,21 +29057,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15955:23:2", + "src": "16154:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 2022, + "id": 3509, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "totalTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 1127, - "src": "15955:35:2", + "referencedDeclaration": 2614, + "src": "16154:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29097,18 +29097,18 @@ "typeString": "uint256" } ], - "id": 2012, + "id": 3499, "name": "_ChallengeSucceeded", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1095, - "src": "15872:19:2", + "referencedDeclaration": 2582, + "src": "16038:19:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (bytes32,uint256,uint256,uint256)" } }, - "id": 2023, + "id": 3510, "isConstant": false, "isLValue": false, "isPure": false, @@ -29116,25 +29116,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15872:119:2", + "src": "16038:159:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2024, - "nodeType": "ExpressionStatement", - "src": "15872:119:2" + "id": 3511, + "nodeType": "EmitStatement", + "src": "16033:164:6" } ] }, - "id": 2026, + "id": 3513, "nodeType": "IfStatement", - "src": "15325:673:2", + "src": "15441:763:6", "trueBody": { - "id": 1996, + "id": 3483, "nodeType": "Block", - "src": "15359:297:2", + "src": "15475:342:6", "statements": [ { "expression": { @@ -29142,12 +29142,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1973, + "id": 3460, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1935, - "src": "15388:12:2", + "referencedDeclaration": 3422, + "src": "15504:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -29161,18 +29161,18 @@ "typeString": "bytes32" } ], - "id": 1972, + "id": 3459, "name": "whitelistApplication", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2052, - "src": "15367:20:2", + "referencedDeclaration": 3539, + "src": "15483:20:6", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 1974, + "id": 3461, "isConstant": false, "isLValue": false, "isPure": false, @@ -29180,20 +29180,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15367:34:2", + "src": "15483:34:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1975, + "id": 3462, "nodeType": "ExpressionStatement", - "src": "15367:34:2" + "src": "15483:34:6" }, { "expression": { "argumentTypes": null, - "id": 1981, + "id": 3468, "isConstant": false, "isLValue": false, "isPure": false, @@ -29204,26 +29204,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1976, + "id": 3463, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "15476:8:2", + "referencedDeclaration": 2627, + "src": "15592:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 1978, + "id": 3465, "indexExpression": { "argumentTypes": null, - "id": 1977, + "id": 3464, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1935, - "src": "15485:12:2", + "referencedDeclaration": 3422, + "src": "15601:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -29234,21 +29234,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15476:22:2", + "src": "15592:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 1979, + "id": 3466, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "15476:38:2", + "referencedDeclaration": 2601, + "src": "15592:38:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29258,39 +29258,39 @@ "operator": "+=", "rightHandSide": { "argumentTypes": null, - "id": 1980, + "id": 3467, "name": "reward", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1946, - "src": "15518:6:2", + "referencedDeclaration": 3433, + "src": "15634:6:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "15476:48:2", + "src": "15592:48:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1982, + "id": 3469, "nodeType": "ExpressionStatement", - "src": "15476:48:2" + "src": "15592:48:6" }, { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1984, + "id": 3471, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1935, - "src": "15550:12:2", + "referencedDeclaration": 3422, + "src": "15680:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -29298,12 +29298,12 @@ }, { "argumentTypes": null, - "id": 1985, + "id": 3472, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15564:11:2", + "referencedDeclaration": 3426, + "src": "15702:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29315,26 +29315,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1986, + "id": 3473, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "15577:10:2", + "referencedDeclaration": 2623, + "src": "15723:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1988, + "id": 3475, "indexExpression": { "argumentTypes": null, - "id": 1987, + "id": 3474, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15588:11:2", + "referencedDeclaration": 3426, + "src": "15734:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29345,21 +29345,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15577:23:2", + "src": "15723:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1989, + "id": 3476, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "rewardPool", "nodeType": "MemberAccess", - "referencedDeclaration": 1119, - "src": "15577:34:2", + "referencedDeclaration": 2606, + "src": "15723:34:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29371,26 +29371,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1990, + "id": 3477, "name": "challenges", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1136, - "src": "15613:10:2", + "referencedDeclaration": 2623, + "src": "15767:10:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$1132_storage_$", + "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Challenge_$2619_storage_$", "typeString": "mapping(uint256 => struct Registry.Challenge storage ref)" } }, - "id": 1992, + "id": 3479, "indexExpression": { "argumentTypes": null, - "id": 1991, + "id": 3478, "name": "challengeID", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1939, - "src": "15624:11:2", + "referencedDeclaration": 3426, + "src": "15778:11:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29401,21 +29401,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "15613:23:2", + "src": "15767:23:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Challenge_$1132_storage", + "typeIdentifier": "t_struct$_Challenge_$2619_storage", "typeString": "struct Registry.Challenge storage ref" } }, - "id": 1993, + "id": 3480, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "totalTokens", "nodeType": "MemberAccess", - "referencedDeclaration": 1127, - "src": "15613:35:2", + "referencedDeclaration": 2614, + "src": "15767:35:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29441,18 +29441,18 @@ "typeString": "uint256" } ], - "id": 1983, + "id": 3470, "name": "_ChallengeFailed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1085, - "src": "15533:16:2", + "referencedDeclaration": 2572, + "src": "15654:16:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (bytes32,uint256,uint256,uint256)" } }, - "id": 1994, + "id": 3481, "isConstant": false, "isLValue": false, "isPure": false, @@ -29460,15 +29460,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "15533:116:2", + "src": "15654:156:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1995, - "nodeType": "ExpressionStatement", - "src": "15533:116:2" + "id": 3482, + "nodeType": "EmitStatement", + "src": "15649:161:6" } ] } @@ -29476,7 +29476,7 @@ ] }, "documentation": "@dev Determines the winner in a challenge. Rewards the winner tokens and\neither whitelists or de-whitelists the listingHash.\n@param _listingHash A listingHash with a challenge that is to be resolved", - "id": 2028, + "id": 3515, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -29484,16 +29484,16 @@ "name": "resolveChallenge", "nodeType": "FunctionDefinition", "parameters": { - "id": 1936, + "id": 3423, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1935, + "id": 3422, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 2028, - "src": "14754:20:2", + "scope": 3515, + "src": "14870:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29501,10 +29501,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 1934, + "id": 3421, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "14754:7:2", + "src": "14870:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -29514,31 +29514,31 @@ "visibility": "internal" } ], - "src": "14753:22:2" + "src": "14869:22:6" }, "payable": false, "returnParameters": { - "id": 1937, + "id": 3424, "nodeType": "ParameterList", "parameters": [], - "src": "14784:0:2" + "src": "14900:0:6" }, - "scope": 2106, - "src": "14728:1274:2", + "scope": 3593, + "src": "14844:1364:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "private" }, { "body": { - "id": 2051, + "id": 3538, "nodeType": "Block", - "src": "16396:140:2", + "src": "16602:143:6", "statements": [ { "condition": { "argumentTypes": null, - "id": 2037, + "id": 3524, "isConstant": false, "isLValue": false, "isPure": false, @@ -29546,33 +29546,33 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "16406:35:2", + "src": "16612:35:6", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2033, + "id": 3520, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "16407:8:2", + "referencedDeclaration": 2627, + "src": "16613:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 2035, + "id": 3522, "indexExpression": { "argumentTypes": null, - "id": 2034, + "id": 3521, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2030, - "src": "16416:12:2", + "referencedDeclaration": 3517, + "src": "16622:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -29583,21 +29583,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "16407:22:2", + "src": "16613:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 2036, + "id": 3523, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "whitelisted", "nodeType": "MemberAccess", - "referencedDeclaration": 1110, - "src": "16407:34:2", + "referencedDeclaration": 2597, + "src": "16613:34:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -29609,26 +29609,26 @@ } }, "falseBody": null, - "id": 2043, + "id": 3530, "nodeType": "IfStatement", - "src": "16402:83:2", + "src": "16608:86:6", "trueBody": { - "id": 2042, + "id": 3529, "nodeType": "Block", - "src": "16443:42:2", + "src": "16649:45:6", "statements": [ { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2039, + "id": 3526, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2030, - "src": "16469:12:2", + "referencedDeclaration": 3517, + "src": "16679:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -29642,18 +29642,18 @@ "typeString": "bytes32" } ], - "id": 2038, + "id": 3525, "name": "_ApplicationWhitelisted", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1059, - "src": "16445:23:2", + "referencedDeclaration": 2546, + "src": "16655:23:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 2040, + "id": 3527, "isConstant": false, "isLValue": false, "isPure": false, @@ -29661,15 +29661,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16445:37:2", + "src": "16655:37:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2041, - "nodeType": "ExpressionStatement", - "src": "16445:37:2" + "id": 3528, + "nodeType": "EmitStatement", + "src": "16650:42:6" } ] } @@ -29677,7 +29677,7 @@ { "expression": { "argumentTypes": null, - "id": 2049, + "id": 3536, "isConstant": false, "isLValue": false, "isPure": false, @@ -29688,26 +29688,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2044, + "id": 3531, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "16490:8:2", + "referencedDeclaration": 2627, + "src": "16699:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 2046, + "id": 3533, "indexExpression": { "argumentTypes": null, - "id": 2045, + "id": 3532, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2030, - "src": "16499:12:2", + "referencedDeclaration": 3517, + "src": "16708:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -29718,21 +29718,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "16490:22:2", + "src": "16699:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, - "id": 2047, + "id": 3534, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "whitelisted", "nodeType": "MemberAccess", - "referencedDeclaration": 1110, - "src": "16490:34:2", + "referencedDeclaration": 2597, + "src": "16699:34:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -29743,14 +29743,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 2048, + "id": 3535, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "16527:4:2", + "src": "16736:4:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -29758,20 +29758,20 @@ }, "value": "true" }, - "src": "16490:41:2", + "src": "16699:41:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 2050, + "id": 3537, "nodeType": "ExpressionStatement", - "src": "16490:41:2" + "src": "16699:41:6" } ] }, "documentation": "@dev Called by updateStatus() if the applicationExpiry date passed without a\nchallenge being made. Called by resolveChallenge() if an\napplication/listing beat a challenge.\n@param _listingHash The listingHash of an application/listingHash to be whitelisted", - "id": 2052, + "id": 3539, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -29779,16 +29779,16 @@ "name": "whitelistApplication", "nodeType": "FunctionDefinition", "parameters": { - "id": 2031, + "id": 3518, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2030, + "id": 3517, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 2052, - "src": "16366:20:2", + "scope": 3539, + "src": "16572:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29796,10 +29796,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2029, + "id": 3516, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "16366:7:2", + "src": "16572:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -29809,54 +29809,54 @@ "visibility": "internal" } ], - "src": "16365:22:2" + "src": "16571:22:6" }, "payable": false, "returnParameters": { - "id": 2032, + "id": 3519, "nodeType": "ParameterList", "parameters": [], - "src": "16396:0:2" + "src": "16602:0:6" }, - "scope": 2106, - "src": "16336:200:2", + "scope": 3593, + "src": "16542:203:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "private" }, { "body": { - "id": 2104, + "id": 3591, "nodeType": "Block", - "src": "16750:579:2", + "src": "16959:589:6", "statements": [ { "assignments": [ - 2058 + 3545 ], "declarations": [ { "constant": false, - "id": 2058, + "id": 3545, "name": "listing", "nodeType": "VariableDeclaration", - "scope": 2105, - "src": "16756:23:2", + "scope": 3592, + "src": "16965:23:6", "stateVariable": false, "storageLocation": "storage", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" }, "typeName": { "contractScope": null, - "id": 2057, + "id": 3544, "name": "Listing", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1117, - "src": "16756:7:2", + "referencedDeclaration": 2604, + "src": "16965:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing" } }, @@ -29864,31 +29864,31 @@ "visibility": "internal" } ], - "id": 2062, + "id": 3549, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2059, + "id": 3546, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "16782:8:2", + "referencedDeclaration": 2627, + "src": "16991:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 2061, + "id": 3548, "indexExpression": { "argumentTypes": null, - "id": 2060, + "id": 3547, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2054, - "src": "16791:12:2", + "referencedDeclaration": 3541, + "src": "17000:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -29899,62 +29899,62 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "16782:22:2", + "src": "16991:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "16756:48:2" + "src": "16965:48:6" }, { "condition": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2063, + "id": 3550, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2058, - "src": "16890:7:2", + "referencedDeclaration": 3545, + "src": "17099:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 2064, + "id": 3551, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "whitelisted", "nodeType": "MemberAccess", - "referencedDeclaration": 1110, - "src": "16890:19:2", + "referencedDeclaration": 2597, + "src": "17099:19:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 2074, + "id": 3561, "nodeType": "Block", - "src": "16961:48:2", + "src": "17175:53:6", "statements": [ { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2071, + "id": 3558, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2054, - "src": "16989:12:2", + "referencedDeclaration": 3541, + "src": "17208:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -29968,18 +29968,18 @@ "typeString": "bytes32" } ], - "id": 2070, + "id": 3557, "name": "_ApplicationRemoved", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1063, - "src": "16969:19:2", + "referencedDeclaration": 2550, + "src": "17188:19:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 2072, + "id": 3559, "isConstant": false, "isLValue": false, "isPure": false, @@ -29987,38 +29987,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16969:33:2", + "src": "17188:33:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2073, - "nodeType": "ExpressionStatement", - "src": "16969:33:2" + "id": 3560, + "nodeType": "EmitStatement", + "src": "17183:38:6" } ] }, - "id": 2075, + "id": 3562, "nodeType": "IfStatement", - "src": "16886:123:2", + "src": "17095:133:6", "trueBody": { - "id": 2069, + "id": 3556, "nodeType": "Block", - "src": "16911:44:2", + "src": "17120:49:6", "statements": [ { - "expression": { + "eventCall": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 2066, + "id": 3553, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2054, - "src": "16935:12:2", + "referencedDeclaration": 3541, + "src": "17149:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -30032,18 +30032,18 @@ "typeString": "bytes32" } ], - "id": 2065, + "id": 3552, "name": "_ListingRemoved", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1067, - "src": "16919:15:2", + "referencedDeclaration": 2554, + "src": "17133:15:6", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_bytes32_$returns$__$", "typeString": "function (bytes32)" } }, - "id": 2067, + "id": 3554, "isConstant": false, "isLValue": false, "isPure": false, @@ -30051,31 +30051,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "16919:29:2", + "src": "17133:29:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2068, - "nodeType": "ExpressionStatement", - "src": "16919:29:2" + "id": 3555, + "nodeType": "EmitStatement", + "src": "17128:34:6" } ] } }, { "assignments": [ - 2077 + 3564 ], "declarations": [ { "constant": false, - "id": 2077, + "id": 3564, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 2105, - "src": "17058:13:2", + "scope": 3592, + "src": "17277:13:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30083,10 +30083,10 @@ "typeString": "address" }, "typeName": { - "id": 2076, + "id": 3563, "name": "address", "nodeType": "ElementaryTypeName", - "src": "17058:7:2", + "src": "17277:7:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30096,51 +30096,51 @@ "visibility": "internal" } ], - "id": 2080, + "id": 3567, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2078, + "id": 3565, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2058, - "src": "17074:7:2", + "referencedDeclaration": 3545, + "src": "17293:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 2079, + "id": 3566, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "owner", "nodeType": "MemberAccess", - "referencedDeclaration": 1112, - "src": "17074:13:2", + "referencedDeclaration": 2599, + "src": "17293:13:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "VariableDeclarationStatement", - "src": "17058:29:2" + "src": "17277:29:6" }, { "assignments": [ - 2082 + 3569 ], "declarations": [ { "constant": false, - "id": 2082, + "id": 3569, "name": "unstakedDeposit", "nodeType": "VariableDeclaration", - "scope": 2105, - "src": "17093:20:2", + "scope": 3592, + "src": "17312:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30148,10 +30148,10 @@ "typeString": "uint256" }, "typeName": { - "id": 2081, + "id": 3568, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "17093:4:2", + "src": "17312:4:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30161,43 +30161,43 @@ "visibility": "internal" } ], - "id": 2085, + "id": 3572, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 2083, + "id": 3570, "name": "listing", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2058, - "src": "17116:7:2", + "referencedDeclaration": 3545, + "src": "17335:7:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage_ptr", + "typeIdentifier": "t_struct$_Listing_$2604_storage_ptr", "typeString": "struct Registry.Listing storage pointer" } }, - "id": 2084, + "id": 3571, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "unstakedDeposit", "nodeType": "MemberAccess", - "referencedDeclaration": 1114, - "src": "17116:23:2", + "referencedDeclaration": 2601, + "src": "17335:23:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "17093:46:2" + "src": "17312:46:6" }, { "expression": { "argumentTypes": null, - "id": 2089, + "id": 3576, "isConstant": false, "isLValue": false, "isPure": false, @@ -30205,31 +30205,31 @@ "nodeType": "UnaryOperation", "operator": "delete", "prefix": true, - "src": "17145:29:2", + "src": "17364:29:6", "subExpression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 2086, + "id": 3573, "name": "listings", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1140, - "src": "17152:8:2", + "referencedDeclaration": 2627, + "src": "17371:8:6", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$1117_storage_$", + "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Listing_$2604_storage_$", "typeString": "mapping(bytes32 => struct Registry.Listing storage ref)" } }, - "id": 2088, + "id": 3575, "indexExpression": { "argumentTypes": null, - "id": 2087, + "id": 3574, "name": "_listingHash", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2054, - "src": "17161:12:2", + "referencedDeclaration": 3541, + "src": "17380:12:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -30240,9 +30240,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "17152:22:2", + "src": "17371:22:6", "typeDescriptions": { - "typeIdentifier": "t_struct$_Listing_$1117_storage", + "typeIdentifier": "t_struct$_Listing_$2604_storage", "typeString": "struct Registry.Listing storage ref" } }, @@ -30251,9 +30251,9 @@ "typeString": "tuple()" } }, - "id": 2090, + "id": 3577, "nodeType": "ExpressionStatement", - "src": "17145:29:2" + "src": "17364:29:6" }, { "condition": { @@ -30262,19 +30262,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 2093, + "id": 3580, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 2091, + "id": 3578, "name": "unstakedDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2082, - "src": "17242:15:2", + "referencedDeclaration": 3569, + "src": "17461:15:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30285,14 +30285,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 2092, + "id": 3579, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "17260:1:2", + "src": "17479:1:6", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -30300,20 +30300,20 @@ }, "value": "0" }, - "src": "17242:19:2", + "src": "17461:19:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 2103, + "id": 3590, "nodeType": "IfStatement", - "src": "17238:87:2", + "src": "17457:87:6", "trueBody": { - "id": 2102, + "id": 3589, "nodeType": "Block", - "src": "17263:62:2", + "src": "17482:62:6", "statements": [ { "expression": { @@ -30324,12 +30324,12 @@ "arguments": [ { "argumentTypes": null, - "id": 2097, + "id": 3584, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2077, - "src": "17294:5:2", + "referencedDeclaration": 3564, + "src": "17513:5:6", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30337,12 +30337,12 @@ }, { "argumentTypes": null, - "id": 2098, + "id": 3585, "name": "unstakedDeposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 2082, - "src": "17301:15:2", + "referencedDeclaration": 3569, + "src": "17520:15:6", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30362,32 +30362,32 @@ ], "expression": { "argumentTypes": null, - "id": 2095, + "id": 3582, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1142, - "src": "17279:5:2", + "referencedDeclaration": 2629, + "src": "17498:5:6", "typeDescriptions": { - "typeIdentifier": "t_contract$_EIP20Interface_$3782", - "typeString": "contract EIP20Interface" + "typeIdentifier": "t_contract$_ERC20_$408", + "typeString": "contract ERC20" } }, - "id": 2096, + "id": 3583, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 3736, - "src": "17279:14:2", + "referencedDeclaration": 431, + "src": "17498:14:6", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 2099, + "id": 3586, "isConstant": false, "isLValue": false, "isPure": false, @@ -30395,7 +30395,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "17279:38:2", + "src": "17498:38:6", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -30409,21 +30409,21 @@ "typeString": "bool" } ], - "id": 2094, + "id": 3581, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 3895, - 3896 + 3705, + 3706 ], - "referencedDeclaration": 3895, - "src": "17271:7:2", + "referencedDeclaration": 3705, + "src": "17490:7:6", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 2100, + "id": 3587, "isConstant": false, "isLValue": false, "isPure": false, @@ -30431,15 +30431,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "17271:47:2", + "src": "17490:47:6", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 2101, + "id": 3588, "nodeType": "ExpressionStatement", - "src": "17271:47:2" + "src": "17490:47:6" } ] } @@ -30447,7 +30447,7 @@ ] }, "documentation": "@dev Deletes a listingHash from the whitelist and transfers tokens back to owner\n@param _listingHash The listing hash to delete", - "id": 2105, + "id": 3592, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -30455,16 +30455,16 @@ "name": "resetListing", "nodeType": "FunctionDefinition", "parameters": { - "id": 2055, + "id": 3542, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 2054, + "id": 3541, "name": "_listingHash", "nodeType": "VariableDeclaration", - "scope": 2105, - "src": "16720:20:2", + "scope": 3592, + "src": "16929:20:6", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30472,10 +30472,10 @@ "typeString": "bytes32" }, "typeName": { - "id": 2053, + "id": 3540, "name": "bytes32", "nodeType": "ElementaryTypeName", - "src": "16720:7:2", + "src": "16929:7:6", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -30485,27 +30485,27 @@ "visibility": "internal" } ], - "src": "16719:22:2" + "src": "16928:22:6" }, "payable": false, "returnParameters": { - "id": 2056, + "id": 3543, "nodeType": "ParameterList", "parameters": [], - "src": "16750:0:2" + "src": "16959:0:6" }, - "scope": 2106, - "src": "16698:631:2", + "scope": 3593, + "src": "16907:641:6", "stateMutability": "nonpayable", "superFunction": null, "visibility": "private" } ], - "scope": 2107, - "src": "171:17160:2" + "scope": 3594, + "src": "131:17419:6" } ], - "src": "0:17332:2" + "src": "0:17551:6" }, "compiler": { "name": "solc", @@ -30513,5 +30513,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-06-20T22:39:18.094Z" + "updatedAt": "2018-06-21T22:48:42.380Z" } \ No newline at end of file diff --git a/build/contracts/SafeMath.json b/build/contracts/SafeMath.json index 0f621a1..4e61ad6 100644 --- a/build/contracts/SafeMath.json +++ b/build/contracts/SafeMath.json @@ -1,32 +1,31 @@ { "contractName": "SafeMath", "abi": [], - "bytecode": "0x604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a723058208170eaf98da5cd96ea0bcda1a8efa5aef7150887c3ab19452daf0ca88af81d270029", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fd00a165627a7a723058208170eaf98da5cd96ea0bcda1a8efa5aef7150887c3ab19452daf0ca88af81d270029", - "sourceMap": "117:698:8:-;;132:2:-1;166:7;155:9;146:7;137:37;252:7;246:14;243:1;238:23;232:4;229:33;270:1;265:20;;;;222:63;;265:20;274:9;222:63;;298:9;295:1;288:20;328:4;319:7;311:22;352:7;343;336:24", - "deployedSourceMap": "117:698:8:-;;;;;;;;", - "source": "pragma solidity ^0.4.11;\n\n\n/**\n * @title SafeMath\n * @dev Math operations with safety checks that throw on error\n */\nlibrary SafeMath {\n function mul(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a * b;\n assert(a == 0 || c / a == b);\n return c;\n }\n\n function div(uint256 a, uint256 b) internal constant returns (uint256) {\n // assert(b > 0); // Solidity automatically throws when dividing by 0\n uint256 c = a / b;\n // assert(a == b * c + a % b); // There is no case in which this doesn't hold\n return c;\n }\n\n function sub(uint256 a, uint256 b) internal constant returns (uint256) {\n assert(b <= a);\n return a - b;\n }\n\n function add(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a + b;\n assert(c >= a);\n return c;\n }\n}\n", - "sourcePath": "zeppelin/math/SafeMath.sol", + "bytecode": "0x604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a7230582037fb7dd9177000bc20d24930cbc2c4657d0d02ced0bbd113619e0553eb4c006b0029", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fd00a165627a7a7230582037fb7dd9177000bc20d24930cbc2c4657d0d02ced0bbd113619e0553eb4c006b0029", + "sourceMap": "116:1222:7:-;;132:2:-1;166:7;155:9;146:7;137:37;252:7;246:14;243:1;238:23;232:4;229:33;270:1;265:20;;;;222:63;;265:20;274:9;222:63;;298:9;295:1;288:20;328:4;319:7;311:22;352:7;343;336:24", + "deployedSourceMap": "116:1222:7:-;;;;;;;;", + "source": "pragma solidity 0.4.24;\n\n\n/**\n * @title SafeMath\n * @dev Math operations with safety checks that throw on error\n */\nlibrary SafeMath {\n\n /**\n * @dev Multiplies two numbers, throws on overflow.\n */\n function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {\n // Gas optimization: this is cheaper than asserting 'a' not being zero, but the\n // benefit is lost if 'b' is also tested.\n // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522\n if (a == 0) {\n return 0;\n }\n\n c = a * b;\n assert(c / a == b);\n return c;\n }\n\n /**\n * @dev Integer division of two numbers, truncating the quotient.\n */\n function div(uint256 a, uint256 b) internal pure returns (uint256) {\n // assert(b > 0); // Solidity automatically throws when dividing by 0\n // uint256 c = a / b;\n // assert(a == b * c + a % b); // There is no case in which this doesn't hold\n return a / b;\n }\n\n /**\n * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).\n */\n function sub(uint256 a, uint256 b) internal pure returns (uint256) {\n assert(b <= a);\n return a - b;\n }\n\n /**\n * @dev Adds two numbers, throws on overflow.\n */\n function add(uint256 a, uint256 b) internal pure returns (uint256 c) {\n c = a + b;\n assert(c >= a);\n return c;\n }\n}\n", + "sourcePath": "/home/rob/Github/computable/contracts/SafeMath.sol", "ast": { - "absolutePath": "zeppelin/math/SafeMath.sol", + "absolutePath": "/home/rob/Github/computable/contracts/SafeMath.sol", "exportedSymbols": { "SafeMath": [ - 3877 + 3687 ] }, - "id": 3878, + "id": 3688, "nodeType": "SourceUnit", "nodes": [ { - "id": 3784, + "id": 3595, "literals": [ "solidity", - "^", "0.4", - ".11" + ".24" ], "nodeType": "PragmaDirective", - "src": "0:24:8" + "src": "0:23:7" }, { "baseContracts": [], @@ -34,99 +33,183 @@ "contractKind": "library", "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", "fullyImplemented": true, - "id": 3877, + "id": 3687, "linearizedBaseContracts": [ - 3877 + 3687 ], "name": "SafeMath", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 3813, + "id": 3627, "nodeType": "Block", - "src": "209:76:8", + "src": "271:304:7", "statements": [ { - "assignments": [ - 3794 - ], - "declarations": [ - { - "constant": false, - "id": 3794, - "name": "c", - "nodeType": "VariableDeclaration", - "scope": 3814, - "src": "215:9:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3793, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "215:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 3798, - "initialValue": { + "condition": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3797, + "id": 3606, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3795, + "id": 3604, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3786, - "src": "227:1:8", + "referencedDeclaration": 3597, + "src": "486:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "*", + "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 3796, - "name": "b", + "hexValue": "30", + "id": 3605, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "491:1:7", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "486:6:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 3610, + "nodeType": "IfStatement", + "src": "482:35:7", + "trueBody": { + "id": 3609, + "nodeType": "Block", + "src": "494:23:7", + "statements": [ + { + "expression": { + "argumentTypes": null, + "hexValue": "30", + "id": 3607, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "509:1:7", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "functionReturnParameters": 3603, + "id": 3608, + "nodeType": "Return", + "src": "502:8:7" + } + ] + } + }, + { + "expression": { + "argumentTypes": null, + "id": 3615, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 3611, + "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3788, - "src": "231:1:8", + "referencedDeclaration": 3602, + "src": "523:1:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3614, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3612, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3597, + "src": "527:1:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "argumentTypes": null, + "id": 3613, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3599, + "src": "531:1:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "527:5:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "227:5:8", + "src": "523:9:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "nodeType": "VariableDeclarationStatement", - "src": "215:17:8" + "id": 3616, + "nodeType": "ExpressionStatement", + "src": "523:9:7" }, { "expression": { @@ -135,10 +218,10 @@ { "argumentTypes": null, "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 3808, + "id": 3622, "isConstant": false, "isLValue": false, "isPure": false, @@ -149,130 +232,61 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3802, + "id": 3620, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3800, - "name": "a", + "id": 3618, + "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3786, - "src": "245:1:8", + "referencedDeclaration": 3602, + "src": "545:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "==", + "operator": "/", "rightExpression": { "argumentTypes": null, - "hexValue": "30", - "id": 3801, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "250:1:8", - "subdenomination": null, + "id": 3619, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3597, + "src": "549:1:7", "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } }, - "src": "245:6:8", + "src": "545:5:7", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "||", + "operator": "==", "rightExpression": { "argumentTypes": null, - "commonType": { + "id": 3621, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3599, + "src": "554:1:7", + "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" - }, - "id": 3807, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3805, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 3803, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3794, - "src": "255:1:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "argumentTypes": null, - "id": 3804, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3786, - "src": "259:1:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "255:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 3806, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3788, - "src": "264:1:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "255:10:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" } }, - "src": "245:20:8", + "src": "545:10:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -286,18 +300,18 @@ "typeString": "bool" } ], - "id": 3799, + "id": 3617, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3881, - "src": "238:6:8", + "referencedDeclaration": 3691, + "src": "538:6:7", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3809, + "id": 3623, "isConstant": false, "isLValue": false, "isPure": false, @@ -305,39 +319,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "238:28:8", + "src": "538:18:7", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3810, + "id": 3624, "nodeType": "ExpressionStatement", - "src": "238:28:8" + "src": "538:18:7" }, { "expression": { "argumentTypes": null, - "id": 3811, + "id": 3625, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3794, - "src": "279:1:8", + "referencedDeclaration": 3602, + "src": "569:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3792, - "id": 3812, + "functionReturnParameters": 3603, + "id": 3626, "nodeType": "Return", - "src": "272:8:8" + "src": "562:8:7" } ] }, - "documentation": null, - "id": 3814, + "documentation": "@dev Multiplies two numbers, throws on overflow.", + "id": 3628, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -345,16 +359,16 @@ "name": "mul", "nodeType": "FunctionDefinition", "parameters": { - "id": 3789, + "id": 3600, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3786, + "id": 3597, "name": "a", "nodeType": "VariableDeclaration", - "scope": 3814, - "src": "151:9:8", + "scope": 3628, + "src": "215:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -362,10 +376,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3785, + "id": 3596, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "151:7:8", + "src": "215:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -376,11 +390,11 @@ }, { "constant": false, - "id": 3788, + "id": 3599, "name": "b", "nodeType": "VariableDeclaration", - "scope": 3814, - "src": "162:9:8", + "scope": 3628, + "src": "226:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -388,10 +402,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3787, + "id": 3598, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "162:7:8", + "src": "226:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -401,20 +415,20 @@ "visibility": "internal" } ], - "src": "150:22:8" + "src": "214:22:7" }, "payable": false, "returnParameters": { - "id": 3792, + "id": 3603, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3791, - "name": "", + "id": 3602, + "name": "c", "nodeType": "VariableDeclaration", - "scope": 3814, - "src": "200:7:8", + "scope": 3628, + "src": "260:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -422,10 +436,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3790, + "id": 3601, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "200:7:8", + "src": "260:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -435,72 +449,40 @@ "visibility": "internal" } ], - "src": "199:9:8" + "src": "259:11:7" }, - "scope": 3877, - "src": "138:147:8", - "stateMutability": "view", + "scope": 3687, + "src": "202:373:7", + "stateMutability": "pure", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 3831, + "id": 3641, "nodeType": "Block", - "src": "360:198:8", + "src": "724:205:7", "statements": [ { - "assignments": [ - 3824 - ], - "declarations": [ - { - "constant": false, - "id": 3824, - "name": "c", - "nodeType": "VariableDeclaration", - "scope": 3832, - "src": "440:9:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3823, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "440:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 3828, - "initialValue": { + "expression": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3827, + "id": 3639, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3825, + "id": 3637, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3816, - "src": "452:1:8", + "referencedDeclaration": 3630, + "src": "919:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -510,49 +492,32 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 3826, + "id": 3638, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3818, - "src": "456:1:8", + "referencedDeclaration": 3632, + "src": "923:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "452:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "440:17:8" - }, - { - "expression": { - "argumentTypes": null, - "id": 3829, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3824, - "src": "552:1:8", + "src": "919:5:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3822, - "id": 3830, + "functionReturnParameters": 3636, + "id": 3640, "nodeType": "Return", - "src": "545:8:8" + "src": "912:12:7" } ] }, - "documentation": null, - "id": 3832, + "documentation": "@dev Integer division of two numbers, truncating the quotient.", + "id": 3642, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -560,16 +525,16 @@ "name": "div", "nodeType": "FunctionDefinition", "parameters": { - "id": 3819, + "id": 3633, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3816, + "id": 3630, "name": "a", "nodeType": "VariableDeclaration", - "scope": 3832, - "src": "302:9:8", + "scope": 3642, + "src": "670:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -577,10 +542,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3815, + "id": 3629, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "302:7:8", + "src": "670:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -591,11 +556,11 @@ }, { "constant": false, - "id": 3818, + "id": 3632, "name": "b", "nodeType": "VariableDeclaration", - "scope": 3832, - "src": "313:9:8", + "scope": 3642, + "src": "681:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -603,10 +568,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3817, + "id": 3631, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "313:7:8", + "src": "681:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -616,20 +581,20 @@ "visibility": "internal" } ], - "src": "301:22:8" + "src": "669:22:7" }, "payable": false, "returnParameters": { - "id": 3822, + "id": 3636, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3821, + "id": 3635, "name": "", "nodeType": "VariableDeclaration", - "scope": 3832, - "src": "351:7:8", + "scope": 3642, + "src": "715:7:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -637,10 +602,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3820, + "id": 3634, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "351:7:8", + "src": "715:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -650,19 +615,19 @@ "visibility": "internal" } ], - "src": "350:9:8" + "src": "714:9:7" }, - "scope": 3877, - "src": "289:269:8", - "stateMutability": "view", + "scope": 3687, + "src": "657:272:7", + "stateMutability": "pure", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 3851, + "id": 3661, "nodeType": "Block", - "src": "633:43:8", + "src": "1108:43:7", "statements": [ { "expression": { @@ -674,19 +639,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3844, + "id": 3654, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3842, + "id": 3652, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3836, - "src": "646:1:8", + "referencedDeclaration": 3646, + "src": "1121:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -696,18 +661,18 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 3843, + "id": 3653, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3834, - "src": "651:1:8", + "referencedDeclaration": 3644, + "src": "1126:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "646:6:8", + "src": "1121:6:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -721,18 +686,18 @@ "typeString": "bool" } ], - "id": 3841, + "id": 3651, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3881, - "src": "639:6:8", + "referencedDeclaration": 3691, + "src": "1114:6:7", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3845, + "id": 3655, "isConstant": false, "isLValue": false, "isPure": false, @@ -740,15 +705,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "639:14:8", + "src": "1114:14:7", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3846, + "id": 3656, "nodeType": "ExpressionStatement", - "src": "639:14:8" + "src": "1114:14:7" }, { "expression": { @@ -757,19 +722,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3849, + "id": 3659, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3847, + "id": 3657, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3834, - "src": "666:1:8", + "referencedDeclaration": 3644, + "src": "1141:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -779,32 +744,32 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 3848, + "id": 3658, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3836, - "src": "670:1:8", + "referencedDeclaration": 3646, + "src": "1145:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "666:5:8", + "src": "1141:5:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3840, - "id": 3850, + "functionReturnParameters": 3650, + "id": 3660, "nodeType": "Return", - "src": "659:12:8" + "src": "1134:12:7" } ] }, - "documentation": null, - "id": 3852, + "documentation": "@dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).", + "id": 3662, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -812,16 +777,16 @@ "name": "sub", "nodeType": "FunctionDefinition", "parameters": { - "id": 3837, + "id": 3647, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3834, + "id": 3644, "name": "a", "nodeType": "VariableDeclaration", - "scope": 3852, - "src": "575:9:8", + "scope": 3662, + "src": "1054:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -829,10 +794,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3833, + "id": 3643, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "575:7:8", + "src": "1054:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -843,11 +808,11 @@ }, { "constant": false, - "id": 3836, + "id": 3646, "name": "b", "nodeType": "VariableDeclaration", - "scope": 3852, - "src": "586:9:8", + "scope": 3662, + "src": "1065:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -855,10 +820,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3835, + "id": 3645, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "586:7:8", + "src": "1065:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -868,20 +833,20 @@ "visibility": "internal" } ], - "src": "574:22:8" + "src": "1053:22:7" }, "payable": false, "returnParameters": { - "id": 3840, + "id": 3650, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3839, + "id": 3649, "name": "", "nodeType": "VariableDeclaration", - "scope": 3852, - "src": "624:7:8", + "scope": 3662, + "src": "1099:7:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -889,10 +854,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3838, + "id": 3648, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "624:7:8", + "src": "1099:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -902,100 +867,97 @@ "visibility": "internal" } ], - "src": "623:9:8" + "src": "1098:9:7" }, - "scope": 3877, - "src": "562:114:8", - "stateMutability": "view", + "scope": 3687, + "src": "1041:110:7", + "stateMutability": "pure", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 3875, + "id": 3685, "nodeType": "Block", - "src": "751:62:8", + "src": "1282:54:7", "statements": [ { - "assignments": [ - 3862 - ], - "declarations": [ - { - "constant": false, - "id": 3862, - "name": "c", - "nodeType": "VariableDeclaration", - "scope": 3876, - "src": "757:9:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3861, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "757:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 3866, - "initialValue": { + "expression": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3865, + "id": 3675, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { + "leftHandSide": { "argumentTypes": null, - "id": 3863, - "name": "a", + "id": 3671, + "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3854, - "src": "769:1:8", + "referencedDeclaration": 3669, + "src": "1288:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { "argumentTypes": null, - "id": 3864, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3856, - "src": "773:1:8", + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3674, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3672, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3664, + "src": "1292:1:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "argumentTypes": null, + "id": 3673, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3666, + "src": "1296:1:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1292:5:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "769:5:8", + "src": "1288:9:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "nodeType": "VariableDeclarationStatement", - "src": "757:17:8" + "id": 3676, + "nodeType": "ExpressionStatement", + "src": "1288:9:7" }, { "expression": { @@ -1007,19 +969,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3870, + "id": 3680, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3868, + "id": 3678, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3862, - "src": "787:1:8", + "referencedDeclaration": 3669, + "src": "1310:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1029,18 +991,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 3869, + "id": 3679, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3854, - "src": "792:1:8", + "referencedDeclaration": 3664, + "src": "1315:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "787:6:8", + "src": "1310:6:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1054,18 +1016,18 @@ "typeString": "bool" } ], - "id": 3867, + "id": 3677, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3881, - "src": "780:6:8", + "referencedDeclaration": 3691, + "src": "1303:6:7", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3871, + "id": 3681, "isConstant": false, "isLValue": false, "isPure": false, @@ -1073,39 +1035,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "780:14:8", + "src": "1303:14:7", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3872, + "id": 3682, "nodeType": "ExpressionStatement", - "src": "780:14:8" + "src": "1303:14:7" }, { "expression": { "argumentTypes": null, - "id": 3873, + "id": 3683, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3862, - "src": "807:1:8", + "referencedDeclaration": 3669, + "src": "1330:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3860, - "id": 3874, + "functionReturnParameters": 3670, + "id": 3684, "nodeType": "Return", - "src": "800:8:8" + "src": "1323:8:7" } ] }, - "documentation": null, - "id": 3876, + "documentation": "@dev Adds two numbers, throws on overflow.", + "id": 3686, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1113,16 +1075,16 @@ "name": "add", "nodeType": "FunctionDefinition", "parameters": { - "id": 3857, + "id": 3667, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3854, + "id": 3664, "name": "a", "nodeType": "VariableDeclaration", - "scope": 3876, - "src": "693:9:8", + "scope": 3686, + "src": "1226:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1130,10 +1092,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3853, + "id": 3663, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "693:7:8", + "src": "1226:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1144,11 +1106,11 @@ }, { "constant": false, - "id": 3856, + "id": 3666, "name": "b", "nodeType": "VariableDeclaration", - "scope": 3876, - "src": "704:9:8", + "scope": 3686, + "src": "1237:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1156,10 +1118,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3855, + "id": 3665, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "704:7:8", + "src": "1237:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1169,20 +1131,20 @@ "visibility": "internal" } ], - "src": "692:22:8" + "src": "1225:22:7" }, "payable": false, "returnParameters": { - "id": 3860, + "id": 3670, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3859, - "name": "", + "id": 3669, + "name": "c", "nodeType": "VariableDeclaration", - "scope": 3876, - "src": "742:7:8", + "scope": 3686, + "src": "1271:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1190,10 +1152,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3858, + "id": 3668, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "742:7:8", + "src": "1271:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1203,41 +1165,40 @@ "visibility": "internal" } ], - "src": "741:9:8" + "src": "1270:11:7" }, - "scope": 3877, - "src": "680:133:8", - "stateMutability": "view", + "scope": 3687, + "src": "1213:123:7", + "stateMutability": "pure", "superFunction": null, "visibility": "internal" } ], - "scope": 3878, - "src": "117:698:8" + "scope": 3688, + "src": "116:1222:7" } ], - "src": "0:816:8" + "src": "0:1339:7" }, "legacyAST": { - "absolutePath": "zeppelin/math/SafeMath.sol", + "absolutePath": "/home/rob/Github/computable/contracts/SafeMath.sol", "exportedSymbols": { "SafeMath": [ - 3877 + 3687 ] }, - "id": 3878, + "id": 3688, "nodeType": "SourceUnit", "nodes": [ { - "id": 3784, + "id": 3595, "literals": [ "solidity", - "^", "0.4", - ".11" + ".24" ], "nodeType": "PragmaDirective", - "src": "0:24:8" + "src": "0:23:7" }, { "baseContracts": [], @@ -1245,99 +1206,183 @@ "contractKind": "library", "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", "fullyImplemented": true, - "id": 3877, + "id": 3687, "linearizedBaseContracts": [ - 3877 + 3687 ], "name": "SafeMath", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 3813, + "id": 3627, "nodeType": "Block", - "src": "209:76:8", + "src": "271:304:7", "statements": [ { - "assignments": [ - 3794 - ], - "declarations": [ - { - "constant": false, - "id": 3794, - "name": "c", - "nodeType": "VariableDeclaration", - "scope": 3814, - "src": "215:9:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3793, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "215:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 3798, - "initialValue": { + "condition": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3797, + "id": 3606, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3795, + "id": 3604, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3786, - "src": "227:1:8", + "referencedDeclaration": 3597, + "src": "486:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "*", + "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 3796, - "name": "b", + "hexValue": "30", + "id": 3605, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "491:1:7", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "486:6:7", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": null, + "id": 3610, + "nodeType": "IfStatement", + "src": "482:35:7", + "trueBody": { + "id": 3609, + "nodeType": "Block", + "src": "494:23:7", + "statements": [ + { + "expression": { + "argumentTypes": null, + "hexValue": "30", + "id": 3607, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "509:1:7", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "functionReturnParameters": 3603, + "id": 3608, + "nodeType": "Return", + "src": "502:8:7" + } + ] + } + }, + { + "expression": { + "argumentTypes": null, + "id": 3615, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 3611, + "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3788, - "src": "231:1:8", + "referencedDeclaration": 3602, + "src": "523:1:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3614, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3612, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3597, + "src": "527:1:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "argumentTypes": null, + "id": 3613, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3599, + "src": "531:1:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "527:5:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "227:5:8", + "src": "523:9:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "nodeType": "VariableDeclarationStatement", - "src": "215:17:8" + "id": 3616, + "nodeType": "ExpressionStatement", + "src": "523:9:7" }, { "expression": { @@ -1346,10 +1391,10 @@ { "argumentTypes": null, "commonType": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" }, - "id": 3808, + "id": 3622, "isConstant": false, "isLValue": false, "isPure": false, @@ -1360,130 +1405,61 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3802, + "id": 3620, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3800, - "name": "a", + "id": 3618, + "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3786, - "src": "245:1:8", + "referencedDeclaration": 3602, + "src": "545:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "==", + "operator": "/", "rightExpression": { "argumentTypes": null, - "hexValue": "30", - "id": 3801, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "250:1:8", - "subdenomination": null, + "id": 3619, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3597, + "src": "549:1:7", "typeDescriptions": { - "typeIdentifier": "t_rational_0_by_1", - "typeString": "int_const 0" - }, - "value": "0" + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } }, - "src": "245:6:8", + "src": "545:5:7", "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "BinaryOperation", - "operator": "||", + "operator": "==", "rightExpression": { "argumentTypes": null, - "commonType": { + "id": 3621, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3599, + "src": "554:1:7", + "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" - }, - "id": 3807, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3805, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "id": 3803, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3794, - "src": "255:1:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "/", - "rightExpression": { - "argumentTypes": null, - "id": 3804, - "name": "a", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3786, - "src": "259:1:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "255:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": "==", - "rightExpression": { - "argumentTypes": null, - "id": 3806, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3788, - "src": "264:1:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "255:10:8", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" } }, - "src": "245:20:8", + "src": "545:10:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1497,18 +1473,18 @@ "typeString": "bool" } ], - "id": 3799, + "id": 3617, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3881, - "src": "238:6:8", + "referencedDeclaration": 3691, + "src": "538:6:7", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3809, + "id": 3623, "isConstant": false, "isLValue": false, "isPure": false, @@ -1516,39 +1492,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "238:28:8", + "src": "538:18:7", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3810, + "id": 3624, "nodeType": "ExpressionStatement", - "src": "238:28:8" + "src": "538:18:7" }, { "expression": { "argumentTypes": null, - "id": 3811, + "id": 3625, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3794, - "src": "279:1:8", + "referencedDeclaration": 3602, + "src": "569:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3792, - "id": 3812, + "functionReturnParameters": 3603, + "id": 3626, "nodeType": "Return", - "src": "272:8:8" + "src": "562:8:7" } ] }, - "documentation": null, - "id": 3814, + "documentation": "@dev Multiplies two numbers, throws on overflow.", + "id": 3628, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1556,16 +1532,16 @@ "name": "mul", "nodeType": "FunctionDefinition", "parameters": { - "id": 3789, + "id": 3600, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3786, + "id": 3597, "name": "a", "nodeType": "VariableDeclaration", - "scope": 3814, - "src": "151:9:8", + "scope": 3628, + "src": "215:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1573,10 +1549,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3785, + "id": 3596, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "151:7:8", + "src": "215:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1587,11 +1563,11 @@ }, { "constant": false, - "id": 3788, + "id": 3599, "name": "b", "nodeType": "VariableDeclaration", - "scope": 3814, - "src": "162:9:8", + "scope": 3628, + "src": "226:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1599,10 +1575,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3787, + "id": 3598, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "162:7:8", + "src": "226:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1612,20 +1588,20 @@ "visibility": "internal" } ], - "src": "150:22:8" + "src": "214:22:7" }, "payable": false, "returnParameters": { - "id": 3792, + "id": 3603, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3791, - "name": "", + "id": 3602, + "name": "c", "nodeType": "VariableDeclaration", - "scope": 3814, - "src": "200:7:8", + "scope": 3628, + "src": "260:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1633,10 +1609,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3790, + "id": 3601, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "200:7:8", + "src": "260:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1646,72 +1622,40 @@ "visibility": "internal" } ], - "src": "199:9:8" + "src": "259:11:7" }, - "scope": 3877, - "src": "138:147:8", - "stateMutability": "view", + "scope": 3687, + "src": "202:373:7", + "stateMutability": "pure", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 3831, + "id": 3641, "nodeType": "Block", - "src": "360:198:8", + "src": "724:205:7", "statements": [ { - "assignments": [ - 3824 - ], - "declarations": [ - { - "constant": false, - "id": 3824, - "name": "c", - "nodeType": "VariableDeclaration", - "scope": 3832, - "src": "440:9:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3823, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "440:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 3828, - "initialValue": { + "expression": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3827, + "id": 3639, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3825, + "id": 3637, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3816, - "src": "452:1:8", + "referencedDeclaration": 3630, + "src": "919:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1721,49 +1665,32 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 3826, + "id": 3638, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3818, - "src": "456:1:8", + "referencedDeclaration": 3632, + "src": "923:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "452:5:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "VariableDeclarationStatement", - "src": "440:17:8" - }, - { - "expression": { - "argumentTypes": null, - "id": 3829, - "name": "c", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3824, - "src": "552:1:8", + "src": "919:5:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3822, - "id": 3830, + "functionReturnParameters": 3636, + "id": 3640, "nodeType": "Return", - "src": "545:8:8" + "src": "912:12:7" } ] }, - "documentation": null, - "id": 3832, + "documentation": "@dev Integer division of two numbers, truncating the quotient.", + "id": 3642, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -1771,16 +1698,16 @@ "name": "div", "nodeType": "FunctionDefinition", "parameters": { - "id": 3819, + "id": 3633, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3816, + "id": 3630, "name": "a", "nodeType": "VariableDeclaration", - "scope": 3832, - "src": "302:9:8", + "scope": 3642, + "src": "670:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1788,10 +1715,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3815, + "id": 3629, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "302:7:8", + "src": "670:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1802,11 +1729,11 @@ }, { "constant": false, - "id": 3818, + "id": 3632, "name": "b", "nodeType": "VariableDeclaration", - "scope": 3832, - "src": "313:9:8", + "scope": 3642, + "src": "681:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1814,10 +1741,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3817, + "id": 3631, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "313:7:8", + "src": "681:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1827,20 +1754,20 @@ "visibility": "internal" } ], - "src": "301:22:8" + "src": "669:22:7" }, "payable": false, "returnParameters": { - "id": 3822, + "id": 3636, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3821, + "id": 3635, "name": "", "nodeType": "VariableDeclaration", - "scope": 3832, - "src": "351:7:8", + "scope": 3642, + "src": "715:7:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1848,10 +1775,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3820, + "id": 3634, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "351:7:8", + "src": "715:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1861,19 +1788,19 @@ "visibility": "internal" } ], - "src": "350:9:8" + "src": "714:9:7" }, - "scope": 3877, - "src": "289:269:8", - "stateMutability": "view", + "scope": 3687, + "src": "657:272:7", + "stateMutability": "pure", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 3851, + "id": 3661, "nodeType": "Block", - "src": "633:43:8", + "src": "1108:43:7", "statements": [ { "expression": { @@ -1885,19 +1812,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3844, + "id": 3654, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3842, + "id": 3652, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3836, - "src": "646:1:8", + "referencedDeclaration": 3646, + "src": "1121:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1907,18 +1834,18 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 3843, + "id": 3653, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3834, - "src": "651:1:8", + "referencedDeclaration": 3644, + "src": "1126:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "646:6:8", + "src": "1121:6:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1932,18 +1859,18 @@ "typeString": "bool" } ], - "id": 3841, + "id": 3651, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3881, - "src": "639:6:8", + "referencedDeclaration": 3691, + "src": "1114:6:7", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3845, + "id": 3655, "isConstant": false, "isLValue": false, "isPure": false, @@ -1951,15 +1878,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "639:14:8", + "src": "1114:14:7", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3846, + "id": 3656, "nodeType": "ExpressionStatement", - "src": "639:14:8" + "src": "1114:14:7" }, { "expression": { @@ -1968,19 +1895,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3849, + "id": 3659, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3847, + "id": 3657, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3834, - "src": "666:1:8", + "referencedDeclaration": 3644, + "src": "1141:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1990,32 +1917,32 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 3848, + "id": 3658, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3836, - "src": "670:1:8", + "referencedDeclaration": 3646, + "src": "1145:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "666:5:8", + "src": "1141:5:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3840, - "id": 3850, + "functionReturnParameters": 3650, + "id": 3660, "nodeType": "Return", - "src": "659:12:8" + "src": "1134:12:7" } ] }, - "documentation": null, - "id": 3852, + "documentation": "@dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).", + "id": 3662, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -2023,16 +1950,16 @@ "name": "sub", "nodeType": "FunctionDefinition", "parameters": { - "id": 3837, + "id": 3647, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3834, + "id": 3644, "name": "a", "nodeType": "VariableDeclaration", - "scope": 3852, - "src": "575:9:8", + "scope": 3662, + "src": "1054:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2040,10 +1967,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3833, + "id": 3643, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "575:7:8", + "src": "1054:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2054,11 +1981,11 @@ }, { "constant": false, - "id": 3836, + "id": 3646, "name": "b", "nodeType": "VariableDeclaration", - "scope": 3852, - "src": "586:9:8", + "scope": 3662, + "src": "1065:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2066,10 +1993,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3835, + "id": 3645, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "586:7:8", + "src": "1065:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2079,20 +2006,20 @@ "visibility": "internal" } ], - "src": "574:22:8" + "src": "1053:22:7" }, "payable": false, "returnParameters": { - "id": 3840, + "id": 3650, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3839, + "id": 3649, "name": "", "nodeType": "VariableDeclaration", - "scope": 3852, - "src": "624:7:8", + "scope": 3662, + "src": "1099:7:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2100,10 +2027,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3838, + "id": 3648, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "624:7:8", + "src": "1099:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2113,100 +2040,97 @@ "visibility": "internal" } ], - "src": "623:9:8" + "src": "1098:9:7" }, - "scope": 3877, - "src": "562:114:8", - "stateMutability": "view", + "scope": 3687, + "src": "1041:110:7", + "stateMutability": "pure", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 3875, + "id": 3685, "nodeType": "Block", - "src": "751:62:8", + "src": "1282:54:7", "statements": [ { - "assignments": [ - 3862 - ], - "declarations": [ - { - "constant": false, - "id": 3862, - "name": "c", - "nodeType": "VariableDeclaration", - "scope": 3876, - "src": "757:9:8", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 3861, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "757:7:8", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 3866, - "initialValue": { + "expression": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 3865, + "id": 3675, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { + "leftHandSide": { "argumentTypes": null, - "id": 3863, - "name": "a", + "id": 3671, + "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3854, - "src": "769:1:8", + "referencedDeclaration": 3669, + "src": "1288:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "nodeType": "BinaryOperation", - "operator": "+", - "rightExpression": { + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { "argumentTypes": null, - "id": 3864, - "name": "b", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 3856, - "src": "773:1:8", + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3674, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3672, + "name": "a", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3664, + "src": "1292:1:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "argumentTypes": null, + "id": 3673, + "name": "b", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3666, + "src": "1296:1:7", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1292:5:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "769:5:8", + "src": "1288:9:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "nodeType": "VariableDeclarationStatement", - "src": "757:17:8" + "id": 3676, + "nodeType": "ExpressionStatement", + "src": "1288:9:7" }, { "expression": { @@ -2218,19 +2142,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 3870, + "id": 3680, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 3868, + "id": 3678, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3862, - "src": "787:1:8", + "referencedDeclaration": 3669, + "src": "1310:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2240,18 +2164,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 3869, + "id": 3679, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3854, - "src": "792:1:8", + "referencedDeclaration": 3664, + "src": "1315:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "787:6:8", + "src": "1310:6:7", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2265,18 +2189,18 @@ "typeString": "bool" } ], - "id": 3867, + "id": 3677, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3881, - "src": "780:6:8", + "referencedDeclaration": 3691, + "src": "1303:6:7", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 3871, + "id": 3681, "isConstant": false, "isLValue": false, "isPure": false, @@ -2284,39 +2208,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "780:14:8", + "src": "1303:14:7", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 3872, + "id": 3682, "nodeType": "ExpressionStatement", - "src": "780:14:8" + "src": "1303:14:7" }, { "expression": { "argumentTypes": null, - "id": 3873, + "id": 3683, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3862, - "src": "807:1:8", + "referencedDeclaration": 3669, + "src": "1330:1:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 3860, - "id": 3874, + "functionReturnParameters": 3670, + "id": 3684, "nodeType": "Return", - "src": "800:8:8" + "src": "1323:8:7" } ] }, - "documentation": null, - "id": 3876, + "documentation": "@dev Adds two numbers, throws on overflow.", + "id": 3686, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -2324,16 +2248,16 @@ "name": "add", "nodeType": "FunctionDefinition", "parameters": { - "id": 3857, + "id": 3667, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3854, + "id": 3664, "name": "a", "nodeType": "VariableDeclaration", - "scope": 3876, - "src": "693:9:8", + "scope": 3686, + "src": "1226:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2341,10 +2265,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3853, + "id": 3663, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "693:7:8", + "src": "1226:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2355,11 +2279,11 @@ }, { "constant": false, - "id": 3856, + "id": 3666, "name": "b", "nodeType": "VariableDeclaration", - "scope": 3876, - "src": "704:9:8", + "scope": 3686, + "src": "1237:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2367,10 +2291,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3855, + "id": 3665, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "704:7:8", + "src": "1237:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2380,20 +2304,20 @@ "visibility": "internal" } ], - "src": "692:22:8" + "src": "1225:22:7" }, "payable": false, "returnParameters": { - "id": 3860, + "id": 3670, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 3859, - "name": "", + "id": 3669, + "name": "c", "nodeType": "VariableDeclaration", - "scope": 3876, - "src": "742:7:8", + "scope": 3686, + "src": "1271:9:7", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2401,10 +2325,10 @@ "typeString": "uint256" }, "typeName": { - "id": 3858, + "id": 3668, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "742:7:8", + "src": "1271:7:7", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2414,20 +2338,20 @@ "visibility": "internal" } ], - "src": "741:9:8" + "src": "1270:11:7" }, - "scope": 3877, - "src": "680:133:8", - "stateMutability": "view", + "scope": 3687, + "src": "1213:123:7", + "stateMutability": "pure", "superFunction": null, "visibility": "internal" } ], - "scope": 3878, - "src": "117:698:8" + "scope": 3688, + "src": "116:1222:7" } ], - "src": "0:816:8" + "src": "0:1339:7" }, "compiler": { "name": "solc", @@ -2435,5 +2359,5 @@ }, "networks": {}, "schemaVersion": "2.0.1", - "updatedAt": "2018-06-20T22:39:18.106Z" + "updatedAt": "2018-06-21T22:48:42.373Z" } \ No newline at end of file diff --git a/build/contracts/StandardToken.json b/build/contracts/StandardToken.json new file mode 100644 index 0000000..b32a1fd --- /dev/null +++ b/build/contracts/StandardToken.json @@ -0,0 +1,6781 @@ +{ + "contractName": "StandardToken", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "totalSupply", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_owner", + "type": "address" + } + ], + "name": "balanceOf", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_to", + "type": "address" + }, + { + "name": "_value", + "type": "uint256" + } + ], + "name": "transfer", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "owner", + "type": "address" + }, + { + "indexed": true, + "name": "spender", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + } + ], + "name": "Approval", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "from", + "type": "address" + }, + { + "indexed": true, + "name": "to", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + } + ], + "name": "Transfer", + "type": "event" + }, + { + "constant": false, + "inputs": [ + { + "name": "_from", + "type": "address" + }, + { + "name": "_to", + "type": "address" + }, + { + "name": "_value", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_spender", + "type": "address" + }, + { + "name": "_value", + "type": "uint256" + } + ], + "name": "approve", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "_owner", + "type": "address" + }, + { + "name": "_spender", + "type": "address" + } + ], + "name": "allowance", + "outputs": [ + { + "name": "", + "type": "uint256" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_spender", + "type": "address" + }, + { + "name": "_addedValue", + "type": "uint256" + } + ], + "name": "increaseApproval", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "_spender", + "type": "address" + }, + { + "name": "_subtractedValue", + "type": "uint256" + } + ], + "name": "decreaseApproval", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "bytecode": "0x608060405234801561001057600080fd5b50611037806100206000396000f30060806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063095ea7b31461009357806318160ddd146100f857806323b872dd1461012357806366188463146101a857806370a082311461020d578063a9059cbb14610264578063d73dd623146102c9578063dd62ed3e1461032e575b600080fd5b34801561009f57600080fd5b506100de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506103a5565b604051808215151515815260200191505060405180910390f35b34801561010457600080fd5b5061010d610497565b6040518082815260200191505060405180910390f35b34801561012f57600080fd5b5061018e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506104a1565b604051808215151515815260200191505060405180910390f35b3480156101b457600080fd5b506101f3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061085b565b604051808215151515815260200191505060405180910390f35b34801561021957600080fd5b5061024e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610aec565b6040518082815260200191505060405180910390f35b34801561027057600080fd5b506102af600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b34565b604051808215151515815260200191505060405180910390f35b3480156102d557600080fd5b50610314600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d53565b604051808215151515815260200191505060405180910390f35b34801561033a57600080fd5b5061038f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f4f565b6040518082815260200191505060405180910390f35b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600154905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156104de57600080fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561052b57600080fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515156105b657600080fd5b610607826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fd690919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061069a826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fef90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061076b82600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fd690919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083111561096c576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610a00565b61097f8382610fd690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610b7157600080fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610bbe57600080fd5b610c0f826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fd690919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ca2826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fef90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610de482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fef90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000828211151515610fe457fe5b818303905092915050565b6000818301905082811015151561100257fe5b809050929150505600a165627a7a72305820d738b8ecc54cc084f4fc97fe306d739d334dcc598271a09fc53208f9fca1c4c40029", + "deployedBytecode": "0x60806040526004361061008e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063095ea7b31461009357806318160ddd146100f857806323b872dd1461012357806366188463146101a857806370a082311461020d578063a9059cbb14610264578063d73dd623146102c9578063dd62ed3e1461032e575b600080fd5b34801561009f57600080fd5b506100de600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506103a5565b604051808215151515815260200191505060405180910390f35b34801561010457600080fd5b5061010d610497565b6040518082815260200191505060405180910390f35b34801561012f57600080fd5b5061018e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506104a1565b604051808215151515815260200191505060405180910390f35b3480156101b457600080fd5b506101f3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061085b565b604051808215151515815260200191505060405180910390f35b34801561021957600080fd5b5061024e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610aec565b6040518082815260200191505060405180910390f35b34801561027057600080fd5b506102af600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b34565b604051808215151515815260200191505060405180910390f35b3480156102d557600080fd5b50610314600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610d53565b604051808215151515815260200191505060405180910390f35b34801561033a57600080fd5b5061038f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f4f565b6040518082815260200191505060405180910390f35b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600154905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141515156104de57600080fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561052b57600080fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205482111515156105b657600080fd5b610607826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fd690919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061069a826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fef90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061076b82600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fd690919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083111561096c576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610a00565b61097f8382610fd690919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610b7157600080fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610bbe57600080fd5b610c0f826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fd690919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610ca2826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fef90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b6000610de482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fef90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000828211151515610fe457fe5b818303905092915050565b6000818301905082811015151561100257fe5b809050929150505600a165627a7a72305820d738b8ecc54cc084f4fc97fe306d739d334dcc598271a09fc53208f9fca1c4c40029", + "sourceMap": "333:3779:10:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;333:3779:10;;;;;;;", + "deployedSourceMap": "333:3779:10:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1813:188;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1813:188:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;361:83:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;361:83:1;;;;;;;;;;;;;;;;;;;;;;;725:470:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;725:470:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3678:431;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3678:431:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1121:99:1;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1121:99:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;598:321;;8:9:-1;5:2;;;30:1;27;20:12;5:2;598:321:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2925:296:10;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2925:296:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2320:153;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2320:153:10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1813:188;1880:4;1924:6;1892:7;:19;1900:10;1892:19;;;;;;;;;;;;;;;:29;1912:8;1892:29;;;;;;;;;;;;;;;:38;;;;1962:8;1941:38;;1950:10;1941:38;;;1972:6;1941:38;;;;;;;;;;;;;;;;;;1992:4;1985:11;;1813:188;;;;:::o;361:83:1:-;405:7;427:12;;420:19;;361:83;:::o;725:470:10:-;831:4;868:1;853:17;;:3;:17;;;;845:26;;;;;;;;895:8;:15;904:5;895:15;;;;;;;;;;;;;;;;885:6;:25;;877:34;;;;;;;;935:7;:14;943:5;935:14;;;;;;;;;;;;;;;:26;950:10;935:26;;;;;;;;;;;;;;;;925:6;:36;;917:45;;;;;;;;987:27;1007:6;987:8;:15;996:5;987:15;;;;;;;;;;;;;;;;:19;;:27;;;;:::i;:::-;969:8;:15;978:5;969:15;;;;;;;;;;;;;;;:45;;;;1036:25;1054:6;1036:8;:13;1045:3;1036:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;1020:8;:13;1029:3;1020:13;;;;;;;;;;;;;;;:41;;;;1096:38;1127:6;1096:7;:14;1104:5;1096:14;;;;;;;;;;;;;;;:26;1111:10;1096:26;;;;;;;;;;;;;;;;:30;;:38;;;;:::i;:::-;1067:7;:14;1075:5;1067:14;;;;;;;;;;;;;;;:26;1082:10;1067:26;;;;;;;;;;;;;;;:67;;;;1161:3;1145:28;;1154:5;1145:28;;;1166:6;1145:28;;;;;;;;;;;;;;;;;;1186:4;1179:11;;725:470;;;;;:::o;3678:431::-;3784:4;3798:16;3817:7;:19;3825:10;3817:19;;;;;;;;;;;;;;;:29;3837:8;3817:29;;;;;;;;;;;;;;;;3798:48;;3875:8;3856:16;:27;3852:164;;;3925:1;3893:7;:19;3901:10;3893:19;;;;;;;;;;;;;;;:29;3913:8;3893:29;;;;;;;;;;;;;;;:33;;;;3852:164;;;3979:30;3992:16;3979:8;:12;;:30;;;;:::i;:::-;3947:7;:19;3955:10;3947:19;;;;;;;;;;;;;;;:29;3967:8;3947:29;;;;;;;;;;;;;;;:62;;;;3852:164;4047:8;4026:61;;4035:10;4026:61;;;4057:7;:19;4065:10;4057:19;;;;;;;;;;;;;;;:29;4077:8;4057:29;;;;;;;;;;;;;;;;4026:61;;;;;;;;;;;;;;;;;;4100:4;4093:11;;3678:431;;;;;:::o;1121:99:1:-;1177:7;1199:8;:16;1208:6;1199:16;;;;;;;;;;;;;;;;1192:23;;1121:99;;;:::o;598:321::-;661:4;696:1;681:17;;:3;:17;;;;673:26;;;;;;;;723:8;:20;732:10;723:20;;;;;;;;;;;;;;;;713:6;:30;;705:39;;;;;;;;774:32;799:6;774:8;:20;783:10;774:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;751:8;:20;760:10;751:20;;;;;;;;;;;;;;;:55;;;;828:25;846:6;828:8;:13;837:3;828:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;812:8;:13;821:3;812:13;;;;;;;;;;;;;;;:41;;;;885:3;864:33;;873:10;864:33;;;890:6;864:33;;;;;;;;;;;;;;;;;;910:4;903:11;;598:321;;;;:::o;2925:296:10:-;3026:4;3080:46;3114:11;3080:7;:19;3088:10;3080:19;;;;;;;;;;;;;;;:29;3100:8;3080:29;;;;;;;;;;;;;;;;:33;;:46;;;;:::i;:::-;3040:7;:19;3048:10;3040:19;;;;;;;;;;;;;;;:29;3060:8;3040:29;;;;;;;;;;;;;;;:87;;;;3159:8;3138:61;;3147:10;3138:61;;;3169:7;:19;3177:10;3169:19;;;;;;;;;;;;;;;:29;3189:8;3169:29;;;;;;;;;;;;;;;;3138:61;;;;;;;;;;;;;;;;;;3212:4;3205:11;;2925:296;;;;:::o;2320:153::-;2419:7;2443;:15;2451:6;2443:15;;;;;;;;;;;;;;;:25;2459:8;2443:25;;;;;;;;;;;;;;;;2436:32;;2320:153;;;;:::o;1041:110:9:-;1099:7;1126:1;1121;:6;;1114:14;;;;;;1145:1;1141;:5;1134:12;;1041:110;;;;:::o;1213:123::-;1271:9;1296:1;1292;:5;1288:9;;1315:1;1310;:6;;1303:14;;;;;;1330:1;1323:8;;1213:123;;;;:::o", + "source": "pragma solidity 0.4.24;\n\nimport \"./BasicToken.sol\";\nimport \"./ERC20.sol\";\n\n\n/**\n * @title Standard ERC20 token\n *\n * @dev Implementation of the basic standard token.\n * https://github.com/ethereum/EIPs/issues/20\n * Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol\n */\ncontract StandardToken is ERC20, BasicToken {\n\n mapping (address => mapping (address => uint256)) internal allowed;\n\n\n /**\n * @dev Transfer tokens from one address to another\n * @param _from address The address which you want to send tokens from\n * @param _to address The address which you want to transfer to\n * @param _value uint256 the amount of tokens to be transferred\n */\n function transferFrom(\n address _from,\n address _to,\n uint256 _value\n )\n public\n returns (bool)\n {\n require(_to != address(0));\n require(_value <= balances[_from]);\n require(_value <= allowed[_from][msg.sender]);\n\n balances[_from] = balances[_from].sub(_value);\n balances[_to] = balances[_to].add(_value);\n allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);\n emit Transfer(_from, _to, _value);\n return true;\n }\n\n /**\n * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.\n * Beware that changing an allowance with this method brings the risk that someone may use both the old\n * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this\n * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:\n * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n * @param _spender The address which will spend the funds.\n * @param _value The amount of tokens to be spent.\n */\n function approve(address _spender, uint256 _value) public returns (bool) {\n allowed[msg.sender][_spender] = _value;\n emit Approval(msg.sender, _spender, _value);\n return true;\n }\n\n /**\n * @dev Function to check the amount of tokens that an owner allowed to a spender.\n * @param _owner address The address which owns the funds.\n * @param _spender address The address which will spend the funds.\n * @return A uint256 specifying the amount of tokens still available for the spender.\n */\n function allowance(\n address _owner,\n address _spender\n )\n public\n view\n returns (uint256)\n {\n return allowed[_owner][_spender];\n }\n\n /**\n * @dev Increase the amount of tokens that an owner allowed to a spender.\n * approve should be called when allowed[_spender] == 0. To increment\n * allowed value is better to use this function to avoid 2 calls (and wait until\n * the first transaction is mined)\n * From MonolithDAO Token.sol\n * @param _spender The address which will spend the funds.\n * @param _addedValue The amount of tokens to increase the allowance by.\n */\n function increaseApproval(\n address _spender,\n uint256 _addedValue\n )\n public\n returns (bool)\n {\n allowed[msg.sender][_spender] = (\n allowed[msg.sender][_spender].add(_addedValue));\n emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);\n return true;\n }\n\n /**\n * @dev Decrease the amount of tokens that an owner allowed to a spender.\n * approve should be called when allowed[_spender] == 0. To decrement\n * allowed value is better to use this function to avoid 2 calls (and wait until\n * the first transaction is mined)\n * From MonolithDAO Token.sol\n * @param _spender The address which will spend the funds.\n * @param _subtractedValue The amount of tokens to decrease the allowance by.\n */\n function decreaseApproval(\n address _spender,\n uint256 _subtractedValue\n )\n public\n returns (bool)\n {\n uint256 oldValue = allowed[msg.sender][_spender];\n if (_subtractedValue > oldValue) {\n allowed[msg.sender][_spender] = 0;\n } else {\n allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);\n }\n emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);\n return true;\n }\n\n}\n", + "sourcePath": "/home/rob/Github/computable/contracts/StandardToken.sol", + "ast": { + "absolutePath": "/home/rob/Github/computable/contracts/StandardToken.sol", + "exportedSymbols": { + "StandardToken": [ + 4018 + ] + }, + "id": 4019, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 3773, + "literals": [ + "solidity", + "0.4", + ".24" + ], + "nodeType": "PragmaDirective", + "src": "0:23:10" + }, + { + "absolutePath": "/home/rob/Github/computable/contracts/BasicToken.sol", + "file": "./BasicToken.sol", + "id": 3774, + "nodeType": "ImportDirective", + "scope": 4019, + "sourceUnit": 155, + "src": "25:26:10", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rob/Github/computable/contracts/ERC20.sol", + "file": "./ERC20.sol", + "id": 3775, + "nodeType": "ImportDirective", + "scope": 4019, + "sourceUnit": 523, + "src": "52:21:10", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 3776, + "name": "ERC20", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 522, + "src": "359:5:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC20_$522", + "typeString": "contract ERC20" + } + }, + "id": 3777, + "nodeType": "InheritanceSpecifier", + "src": "359:5:10" + }, + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 3778, + "name": "BasicToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 154, + "src": "366:10:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_BasicToken_$154", + "typeString": "contract BasicToken" + } + }, + "id": 3779, + "nodeType": "InheritanceSpecifier", + "src": "366:10:10" + } + ], + "contractDependencies": [ + 154, + 522, + 554 + ], + "contractKind": "contract", + "documentation": "@title Standard ERC20 token\n * @dev Implementation of the basic standard token.\nhttps://github.com/ethereum/EIPs/issues/20\nBased on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol", + "fullyImplemented": true, + "id": 4018, + "linearizedBaseContracts": [ + 4018, + 154, + 522, + 554 + ], + "name": "StandardToken", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 3785, + "name": "allowed", + "nodeType": "VariableDeclaration", + "scope": 4018, + "src": "382:66:10", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + }, + "typeName": { + "id": 3784, + "keyType": { + "id": 3780, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "391:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "382:49:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + }, + "valueType": { + "id": 3783, + "keyType": { + "id": 3781, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "411:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "402:28:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 3782, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "422:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + } + }, + "value": null, + "visibility": "internal" + }, + { + "body": { + "id": 3870, + "nodeType": "Block", + "src": "839:356:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 3801, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3797, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3789, + "src": "853:3:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 3799, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "868:1:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 3798, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "860:7:10", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 3800, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "860:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "853:17:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 3796, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4036, + 4037 + ], + "referencedDeclaration": 4036, + "src": "845:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 3802, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "845:26:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3803, + "nodeType": "ExpressionStatement", + "src": "845:26:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3809, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3805, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3791, + "src": "885:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3806, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "895:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3808, + "indexExpression": { + "argumentTypes": null, + "id": 3807, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3787, + "src": "904:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "895:15:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "885:25:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 3804, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4036, + 4037 + ], + "referencedDeclaration": 4036, + "src": "877:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 3810, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "877:34:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3811, + "nodeType": "ExpressionStatement", + "src": "877:34:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3820, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3813, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3791, + "src": "925:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3814, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "935:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3816, + "indexExpression": { + "argumentTypes": null, + "id": 3815, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3787, + "src": "943:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "935:14:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3819, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3817, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "950:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3818, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "950:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "935:26:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "925:36:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 3812, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4036, + 4037 + ], + "referencedDeclaration": 4036, + "src": "917:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 3821, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "917:45:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3822, + "nodeType": "ExpressionStatement", + "src": "917:45:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 3832, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3823, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "969:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3825, + "indexExpression": { + "argumentTypes": null, + "id": 3824, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3787, + "src": "978:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "969:15:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3830, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3791, + "src": "1007:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3826, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "987:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3828, + "indexExpression": { + "argumentTypes": null, + "id": 3827, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3787, + "src": "996:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "987:15:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3829, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 3746, + "src": "987:19:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 3831, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "987:27:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "969:45:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3833, + "nodeType": "ExpressionStatement", + "src": "969:45:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 3843, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3834, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "1020:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3836, + "indexExpression": { + "argumentTypes": null, + "id": 3835, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3789, + "src": "1029:3:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1020:13:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3841, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3791, + "src": "1054:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3837, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "1036:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3839, + "indexExpression": { + "argumentTypes": null, + "id": 3838, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3789, + "src": "1045:3:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1036:13:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3840, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 3770, + "src": "1036:17:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 3842, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1036:25:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1020:41:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3844, + "nodeType": "ExpressionStatement", + "src": "1020:41:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 3860, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3845, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "1067:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3849, + "indexExpression": { + "argumentTypes": null, + "id": 3846, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3787, + "src": "1075:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1067:14:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3850, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3847, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "1082:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3848, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1082:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1067:26:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3858, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3791, + "src": "1127:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3851, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "1096:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3853, + "indexExpression": { + "argumentTypes": null, + "id": 3852, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3787, + "src": "1104:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1096:14:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3856, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3854, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "1111:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3855, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1111:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1096:26:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3857, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 3746, + "src": "1096:30:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 3859, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1096:38:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1067:67:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3861, + "nodeType": "ExpressionStatement", + "src": "1067:67:10" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3863, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3787, + "src": "1154:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3864, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3789, + "src": "1161:3:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3865, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3791, + "src": "1166:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3862, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 553, + "src": "1145:8:10", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3866, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1145:28:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3867, + "nodeType": "EmitStatement", + "src": "1140:33:10" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3868, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1186:4:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3795, + "id": 3869, + "nodeType": "Return", + "src": "1179:11:10" + } + ] + }, + "documentation": "@dev Transfer tokens from one address to another\n@param _from address The address which you want to send tokens from\n@param _to address The address which you want to transfer to\n@param _value uint256 the amount of tokens to be transferred", + "id": 3871, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transferFrom", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3792, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3787, + "name": "_from", + "nodeType": "VariableDeclaration", + "scope": 3871, + "src": "752:13:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3786, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "752:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3789, + "name": "_to", + "nodeType": "VariableDeclaration", + "scope": 3871, + "src": "771:11:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3788, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "771:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3791, + "name": "_value", + "nodeType": "VariableDeclaration", + "scope": 3871, + "src": "788:14:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3790, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "788:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "746:60:10" + }, + "payable": false, + "returnParameters": { + "id": 3795, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3794, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3871, + "src": "831:4:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3793, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "831:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "830:6:10" + }, + "scope": 4018, + "src": "725:470:10", + "stateMutability": "nonpayable", + "superFunction": 504, + "visibility": "public" + }, + { + "body": { + "id": 3898, + "nodeType": "Block", + "src": "1886:115:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3887, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3880, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "1892:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3884, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3881, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "1900:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3882, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1900:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1892:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3885, + "indexExpression": { + "argumentTypes": null, + "id": 3883, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3873, + "src": "1912:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1892:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 3886, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3875, + "src": "1924:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1892:38:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3888, + "nodeType": "ExpressionStatement", + "src": "1892:38:10" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3890, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "1950:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3891, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1950:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3892, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3873, + "src": "1962:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3893, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3875, + "src": "1972:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3889, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 521, + "src": "1941:8:10", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3894, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1941:38:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3895, + "nodeType": "EmitStatement", + "src": "1936:43:10" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3896, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1992:4:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3879, + "id": 3897, + "nodeType": "Return", + "src": "1985:11:10" + } + ] + }, + "documentation": "@dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.\nBeware that changing an allowance with this method brings the risk that someone may use both the old\nand the new allowance by unfortunate transaction ordering. One possible solution to mitigate this\nrace condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:\nhttps://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n@param _spender The address which will spend the funds.\n@param _value The amount of tokens to be spent.", + "id": 3899, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "approve", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3876, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3873, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 3899, + "src": "1830:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3872, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1830:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3875, + "name": "_value", + "nodeType": "VariableDeclaration", + "scope": 3899, + "src": "1848:14:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3874, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1848:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1829:34:10" + }, + "payable": false, + "returnParameters": { + "id": 3879, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3878, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3899, + "src": "1880:4:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3877, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1880:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1879:6:10" + }, + "scope": 4018, + "src": "1813:188:10", + "stateMutability": "nonpayable", + "superFunction": 513, + "visibility": "public" + }, + { + "body": { + "id": 3914, + "nodeType": "Block", + "src": "2430:43:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3908, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "2443:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3910, + "indexExpression": { + "argumentTypes": null, + "id": 3909, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3901, + "src": "2451:6:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2443:15:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3912, + "indexExpression": { + "argumentTypes": null, + "id": 3911, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3903, + "src": "2459:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2443:25:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3907, + "id": 3913, + "nodeType": "Return", + "src": "2436:32:10" + } + ] + }, + "documentation": "@dev Function to check the amount of tokens that an owner allowed to a spender.\n@param _owner address The address which owns the funds.\n@param _spender address The address which will spend the funds.\n@return A uint256 specifying the amount of tokens still available for the spender.", + "id": 3915, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "allowance", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3904, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3901, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 3915, + "src": "2344:14:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3900, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2344:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3903, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 3915, + "src": "2364:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3902, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2364:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2338:47:10" + }, + "payable": false, + "returnParameters": { + "id": 3907, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3906, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3915, + "src": "2419:7:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3905, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2419:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2418:9:10" + }, + "scope": 4018, + "src": "2320:153:10", + "stateMutability": "view", + "superFunction": 493, + "visibility": "public" + }, + { + "body": { + "id": 3956, + "nodeType": "Block", + "src": "3034:187:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3940, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3924, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "3040:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3928, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3925, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "3048:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3926, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3048:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3040:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3929, + "indexExpression": { + "argumentTypes": null, + "id": 3927, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3917, + "src": "3060:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3040:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3937, + "name": "_addedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3919, + "src": "3114:11:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3930, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "3080:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3933, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3931, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "3088:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3088:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3080:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3935, + "indexExpression": { + "argumentTypes": null, + "id": 3934, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3917, + "src": "3100:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3080:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 3770, + "src": "3080:33:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 3938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3080:46:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3939, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3072:55:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3040:87:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3941, + "nodeType": "ExpressionStatement", + "src": "3040:87:10" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3943, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "3147:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3944, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3147:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3945, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3917, + "src": "3159:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3946, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "3169:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3949, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3947, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "3177:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3177:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3169:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3951, + "indexExpression": { + "argumentTypes": null, + "id": 3950, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3917, + "src": "3189:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3169:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3942, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 521, + "src": "3138:8:10", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3138:61:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3953, + "nodeType": "EmitStatement", + "src": "3133:66:10" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3954, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3212:4:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3923, + "id": 3955, + "nodeType": "Return", + "src": "3205:11:10" + } + ] + }, + "documentation": "@dev Increase the amount of tokens that an owner allowed to a spender.\napprove should be called when allowed[_spender] == 0. To increment\nallowed value is better to use this function to avoid 2 calls (and wait until\nthe first transaction is mined)\nFrom MonolithDAO Token.sol\n@param _spender The address which will spend the funds.\n@param _addedValue The amount of tokens to increase the allowance by.", + "id": 3957, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "increaseApproval", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3920, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3917, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 3957, + "src": "2956:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3916, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2956:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3919, + "name": "_addedValue", + "nodeType": "VariableDeclaration", + "scope": 3957, + "src": "2978:19:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3918, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2978:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2950:51:10" + }, + "payable": false, + "returnParameters": { + "id": 3923, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3922, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3957, + "src": "3026:4:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3921, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3026:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3025:6:10" + }, + "scope": 4018, + "src": "2925:296:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 4016, + "nodeType": "Block", + "src": "3792:317:10", + "statements": [ + { + "assignments": [ + 3967 + ], + "declarations": [ + { + "constant": false, + "id": 3967, + "name": "oldValue", + "nodeType": "VariableDeclaration", + "scope": 4017, + "src": "3798:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3966, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3798:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 3974, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3968, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "3817:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3971, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3969, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "3825:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3970, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3825:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3817:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3973, + "indexExpression": { + "argumentTypes": null, + "id": 3972, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3959, + "src": "3837:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3817:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3798:48:10" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3975, + "name": "_subtractedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3961, + "src": "3856:16:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "id": 3976, + "name": "oldValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3967, + "src": "3875:8:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3856:27:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 4000, + "nodeType": "Block", + "src": "3939:77:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3988, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "3947:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3992, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3989, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "3955:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3990, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3955:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3947:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3993, + "indexExpression": { + "argumentTypes": null, + "id": 3991, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3959, + "src": "3967:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3947:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3996, + "name": "_subtractedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3961, + "src": "3992:16:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 3994, + "name": "oldValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3967, + "src": "3979:8:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3995, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 3746, + "src": "3979:12:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 3997, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3979:30:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3947:62:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3999, + "nodeType": "ExpressionStatement", + "src": "3947:62:10" + } + ] + }, + "id": 4001, + "nodeType": "IfStatement", + "src": "3852:164:10", + "trueBody": { + "id": 3987, + "nodeType": "Block", + "src": "3885:48:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3985, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3978, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "3893:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3982, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3979, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "3901:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3901:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3893:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3983, + "indexExpression": { + "argumentTypes": null, + "id": 3981, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3959, + "src": "3913:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3893:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "30", + "id": 3984, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3925:1:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "3893:33:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3986, + "nodeType": "ExpressionStatement", + "src": "3893:33:10" + } + ] + } + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 4003, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "4035:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 4004, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4035:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 4005, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3959, + "src": "4047:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 4006, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "4057:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 4009, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 4007, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "4065:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 4008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4065:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4057:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 4011, + "indexExpression": { + "argumentTypes": null, + "id": 4010, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3959, + "src": "4077:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4057:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4002, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 521, + "src": "4026:8:10", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 4012, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4026:61:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4013, + "nodeType": "EmitStatement", + "src": "4021:66:10" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 4014, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4100:4:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3965, + "id": 4015, + "nodeType": "Return", + "src": "4093:11:10" + } + ] + }, + "documentation": "@dev Decrease the amount of tokens that an owner allowed to a spender.\napprove should be called when allowed[_spender] == 0. To decrement\nallowed value is better to use this function to avoid 2 calls (and wait until\nthe first transaction is mined)\nFrom MonolithDAO Token.sol\n@param _spender The address which will spend the funds.\n@param _subtractedValue The amount of tokens to decrease the allowance by.", + "id": 4017, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "decreaseApproval", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3962, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3959, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 4017, + "src": "3709:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3958, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3709:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3961, + "name": "_subtractedValue", + "nodeType": "VariableDeclaration", + "scope": 4017, + "src": "3731:24:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3960, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3731:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3703:56:10" + }, + "payable": false, + "returnParameters": { + "id": 3965, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3964, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 4017, + "src": "3784:4:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3963, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3784:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3783:6:10" + }, + "scope": 4018, + "src": "3678:431:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 4019, + "src": "333:3779:10" + } + ], + "src": "0:4113:10" + }, + "legacyAST": { + "absolutePath": "/home/rob/Github/computable/contracts/StandardToken.sol", + "exportedSymbols": { + "StandardToken": [ + 4018 + ] + }, + "id": 4019, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 3773, + "literals": [ + "solidity", + "0.4", + ".24" + ], + "nodeType": "PragmaDirective", + "src": "0:23:10" + }, + { + "absolutePath": "/home/rob/Github/computable/contracts/BasicToken.sol", + "file": "./BasicToken.sol", + "id": 3774, + "nodeType": "ImportDirective", + "scope": 4019, + "sourceUnit": 155, + "src": "25:26:10", + "symbolAliases": [], + "unitAlias": "" + }, + { + "absolutePath": "/home/rob/Github/computable/contracts/ERC20.sol", + "file": "./ERC20.sol", + "id": 3775, + "nodeType": "ImportDirective", + "scope": 4019, + "sourceUnit": 523, + "src": "52:21:10", + "symbolAliases": [], + "unitAlias": "" + }, + { + "baseContracts": [ + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 3776, + "name": "ERC20", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 522, + "src": "359:5:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_ERC20_$522", + "typeString": "contract ERC20" + } + }, + "id": 3777, + "nodeType": "InheritanceSpecifier", + "src": "359:5:10" + }, + { + "arguments": null, + "baseName": { + "contractScope": null, + "id": 3778, + "name": "BasicToken", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 154, + "src": "366:10:10", + "typeDescriptions": { + "typeIdentifier": "t_contract$_BasicToken_$154", + "typeString": "contract BasicToken" + } + }, + "id": 3779, + "nodeType": "InheritanceSpecifier", + "src": "366:10:10" + } + ], + "contractDependencies": [ + 154, + 522, + 554 + ], + "contractKind": "contract", + "documentation": "@title Standard ERC20 token\n * @dev Implementation of the basic standard token.\nhttps://github.com/ethereum/EIPs/issues/20\nBased on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol", + "fullyImplemented": true, + "id": 4018, + "linearizedBaseContracts": [ + 4018, + 154, + 522, + 554 + ], + "name": "StandardToken", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 3785, + "name": "allowed", + "nodeType": "VariableDeclaration", + "scope": 4018, + "src": "382:66:10", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + }, + "typeName": { + "id": 3784, + "keyType": { + "id": 3780, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "391:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "382:49:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + }, + "valueType": { + "id": 3783, + "keyType": { + "id": 3781, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "411:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "402:28:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 3782, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "422:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + } + }, + "value": null, + "visibility": "internal" + }, + { + "body": { + "id": 3870, + "nodeType": "Block", + "src": "839:356:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 3801, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3797, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3789, + "src": "853:3:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 3799, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "868:1:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + } + ], + "id": 3798, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "860:7:10", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 3800, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "860:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "853:17:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 3796, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4036, + 4037 + ], + "referencedDeclaration": 4036, + "src": "845:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 3802, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "845:26:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3803, + "nodeType": "ExpressionStatement", + "src": "845:26:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3809, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3805, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3791, + "src": "885:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3806, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "895:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3808, + "indexExpression": { + "argumentTypes": null, + "id": 3807, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3787, + "src": "904:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "895:15:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "885:25:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 3804, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4036, + 4037 + ], + "referencedDeclaration": 4036, + "src": "877:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 3810, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "877:34:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3811, + "nodeType": "ExpressionStatement", + "src": "877:34:10" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3820, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3813, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3791, + "src": "925:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<=", + "rightExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3814, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "935:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3816, + "indexExpression": { + "argumentTypes": null, + "id": 3815, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3787, + "src": "943:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "935:14:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3819, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3817, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "950:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3818, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "950:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "935:26:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "925:36:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 3812, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4036, + 4037 + ], + "referencedDeclaration": 4036, + "src": "917:7:10", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 3821, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "917:45:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3822, + "nodeType": "ExpressionStatement", + "src": "917:45:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 3832, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3823, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "969:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3825, + "indexExpression": { + "argumentTypes": null, + "id": 3824, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3787, + "src": "978:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "969:15:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3830, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3791, + "src": "1007:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3826, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "987:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3828, + "indexExpression": { + "argumentTypes": null, + "id": 3827, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3787, + "src": "996:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "987:15:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3829, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 3746, + "src": "987:19:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 3831, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "987:27:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "969:45:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3833, + "nodeType": "ExpressionStatement", + "src": "969:45:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 3843, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3834, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "1020:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3836, + "indexExpression": { + "argumentTypes": null, + "id": 3835, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3789, + "src": "1029:3:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1020:13:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3841, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3791, + "src": "1054:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3837, + "name": "balances", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 71, + "src": "1036:8:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3839, + "indexExpression": { + "argumentTypes": null, + "id": 3838, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3789, + "src": "1045:3:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1036:13:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3840, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 3770, + "src": "1036:17:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 3842, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1036:25:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1020:41:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3844, + "nodeType": "ExpressionStatement", + "src": "1020:41:10" + }, + { + "expression": { + "argumentTypes": null, + "id": 3860, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3845, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "1067:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3849, + "indexExpression": { + "argumentTypes": null, + "id": 3846, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3787, + "src": "1075:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1067:14:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3850, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3847, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "1082:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3848, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1082:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1067:26:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3858, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3791, + "src": "1127:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3851, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "1096:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3853, + "indexExpression": { + "argumentTypes": null, + "id": 3852, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3787, + "src": "1104:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1096:14:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3856, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3854, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "1111:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3855, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1111:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1096:26:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3857, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 3746, + "src": "1096:30:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 3859, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1096:38:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1067:67:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3861, + "nodeType": "ExpressionStatement", + "src": "1067:67:10" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3863, + "name": "_from", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3787, + "src": "1154:5:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3864, + "name": "_to", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3789, + "src": "1161:3:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3865, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3791, + "src": "1166:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3862, + "name": "Transfer", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 553, + "src": "1145:8:10", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3866, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1145:28:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3867, + "nodeType": "EmitStatement", + "src": "1140:33:10" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3868, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1186:4:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3795, + "id": 3869, + "nodeType": "Return", + "src": "1179:11:10" + } + ] + }, + "documentation": "@dev Transfer tokens from one address to another\n@param _from address The address which you want to send tokens from\n@param _to address The address which you want to transfer to\n@param _value uint256 the amount of tokens to be transferred", + "id": 3871, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "transferFrom", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3792, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3787, + "name": "_from", + "nodeType": "VariableDeclaration", + "scope": 3871, + "src": "752:13:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3786, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "752:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3789, + "name": "_to", + "nodeType": "VariableDeclaration", + "scope": 3871, + "src": "771:11:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3788, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "771:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3791, + "name": "_value", + "nodeType": "VariableDeclaration", + "scope": 3871, + "src": "788:14:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3790, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "788:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "746:60:10" + }, + "payable": false, + "returnParameters": { + "id": 3795, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3794, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3871, + "src": "831:4:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3793, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "831:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "830:6:10" + }, + "scope": 4018, + "src": "725:470:10", + "stateMutability": "nonpayable", + "superFunction": 504, + "visibility": "public" + }, + { + "body": { + "id": 3898, + "nodeType": "Block", + "src": "1886:115:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3887, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3880, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "1892:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3884, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3881, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "1900:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3882, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1900:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1892:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3885, + "indexExpression": { + "argumentTypes": null, + "id": 3883, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3873, + "src": "1912:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "1892:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 3886, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3875, + "src": "1924:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1892:38:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3888, + "nodeType": "ExpressionStatement", + "src": "1892:38:10" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3890, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "1950:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3891, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "1950:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3892, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3873, + "src": "1962:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3893, + "name": "_value", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3875, + "src": "1972:6:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3889, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 521, + "src": "1941:8:10", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3894, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "1941:38:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3895, + "nodeType": "EmitStatement", + "src": "1936:43:10" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3896, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1992:4:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3879, + "id": 3897, + "nodeType": "Return", + "src": "1985:11:10" + } + ] + }, + "documentation": "@dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.\nBeware that changing an allowance with this method brings the risk that someone may use both the old\nand the new allowance by unfortunate transaction ordering. One possible solution to mitigate this\nrace condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:\nhttps://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n@param _spender The address which will spend the funds.\n@param _value The amount of tokens to be spent.", + "id": 3899, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "approve", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3876, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3873, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 3899, + "src": "1830:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3872, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1830:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3875, + "name": "_value", + "nodeType": "VariableDeclaration", + "scope": 3899, + "src": "1848:14:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3874, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1848:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1829:34:10" + }, + "payable": false, + "returnParameters": { + "id": 3879, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3878, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3899, + "src": "1880:4:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3877, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1880:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "1879:6:10" + }, + "scope": 4018, + "src": "1813:188:10", + "stateMutability": "nonpayable", + "superFunction": 513, + "visibility": "public" + }, + { + "body": { + "id": 3914, + "nodeType": "Block", + "src": "2430:43:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3908, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "2443:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3910, + "indexExpression": { + "argumentTypes": null, + "id": 3909, + "name": "_owner", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3901, + "src": "2451:6:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2443:15:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3912, + "indexExpression": { + "argumentTypes": null, + "id": 3911, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3903, + "src": "2459:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2443:25:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 3907, + "id": 3913, + "nodeType": "Return", + "src": "2436:32:10" + } + ] + }, + "documentation": "@dev Function to check the amount of tokens that an owner allowed to a spender.\n@param _owner address The address which owns the funds.\n@param _spender address The address which will spend the funds.\n@return A uint256 specifying the amount of tokens still available for the spender.", + "id": 3915, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": true, + "modifiers": [], + "name": "allowance", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3904, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3901, + "name": "_owner", + "nodeType": "VariableDeclaration", + "scope": 3915, + "src": "2344:14:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3900, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2344:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3903, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 3915, + "src": "2364:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3902, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2364:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2338:47:10" + }, + "payable": false, + "returnParameters": { + "id": 3907, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3906, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3915, + "src": "2419:7:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3905, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2419:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2418:9:10" + }, + "scope": 4018, + "src": "2320:153:10", + "stateMutability": "view", + "superFunction": 493, + "visibility": "public" + }, + { + "body": { + "id": 3956, + "nodeType": "Block", + "src": "3034:187:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3940, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3924, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "3040:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3928, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3925, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "3048:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3926, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3048:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3040:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3929, + "indexExpression": { + "argumentTypes": null, + "id": 3927, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3917, + "src": "3060:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3040:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "components": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3937, + "name": "_addedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3919, + "src": "3114:11:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3930, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "3080:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3933, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3931, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "3088:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3932, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3088:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3080:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3935, + "indexExpression": { + "argumentTypes": null, + "id": 3934, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3917, + "src": "3100:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3080:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "add", + "nodeType": "MemberAccess", + "referencedDeclaration": 3770, + "src": "3080:33:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 3938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3080:46:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "id": 3939, + "isConstant": false, + "isInlineArray": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "TupleExpression", + "src": "3072:55:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3040:87:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3941, + "nodeType": "ExpressionStatement", + "src": "3040:87:10" + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3943, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "3147:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3944, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3147:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 3945, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3917, + "src": "3159:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3946, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "3169:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3949, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3947, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "3177:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3948, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3177:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3169:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3951, + "indexExpression": { + "argumentTypes": null, + "id": 3950, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3917, + "src": "3189:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3169:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 3942, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 521, + "src": "3138:8:10", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 3952, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3138:61:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 3953, + "nodeType": "EmitStatement", + "src": "3133:66:10" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 3954, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3212:4:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3923, + "id": 3955, + "nodeType": "Return", + "src": "3205:11:10" + } + ] + }, + "documentation": "@dev Increase the amount of tokens that an owner allowed to a spender.\napprove should be called when allowed[_spender] == 0. To increment\nallowed value is better to use this function to avoid 2 calls (and wait until\nthe first transaction is mined)\nFrom MonolithDAO Token.sol\n@param _spender The address which will spend the funds.\n@param _addedValue The amount of tokens to increase the allowance by.", + "id": 3957, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "increaseApproval", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3920, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3917, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 3957, + "src": "2956:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3916, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2956:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3919, + "name": "_addedValue", + "nodeType": "VariableDeclaration", + "scope": 3957, + "src": "2978:19:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3918, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2978:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2950:51:10" + }, + "payable": false, + "returnParameters": { + "id": 3923, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3922, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 3957, + "src": "3026:4:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3921, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3026:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3025:6:10" + }, + "scope": 4018, + "src": "2925:296:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 4016, + "nodeType": "Block", + "src": "3792:317:10", + "statements": [ + { + "assignments": [ + 3967 + ], + "declarations": [ + { + "constant": false, + "id": 3967, + "name": "oldValue", + "nodeType": "VariableDeclaration", + "scope": 4017, + "src": "3798:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3966, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3798:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 3974, + "initialValue": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3968, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "3817:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3971, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3969, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "3825:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3970, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3825:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3817:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3973, + "indexExpression": { + "argumentTypes": null, + "id": 3972, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3959, + "src": "3837:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3817:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3798:48:10" + }, + { + "condition": { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 3977, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 3975, + "name": "_subtractedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3961, + "src": "3856:16:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">", + "rightExpression": { + "argumentTypes": null, + "id": 3976, + "name": "oldValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3967, + "src": "3875:8:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3856:27:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 4000, + "nodeType": "Block", + "src": "3939:77:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3998, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3988, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "3947:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3992, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3989, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "3955:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3990, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3955:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3947:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3993, + "indexExpression": { + "argumentTypes": null, + "id": 3991, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3959, + "src": "3967:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3947:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 3996, + "name": "_subtractedValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3961, + "src": "3992:16:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "expression": { + "argumentTypes": null, + "id": 3994, + "name": "oldValue", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3967, + "src": "3979:8:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3995, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sub", + "nodeType": "MemberAccess", + "referencedDeclaration": 3746, + "src": "3979:12:10", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", + "typeString": "function (uint256,uint256) pure returns (uint256)" + } + }, + "id": 3997, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "3979:30:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3947:62:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3999, + "nodeType": "ExpressionStatement", + "src": "3947:62:10" + } + ] + }, + "id": 4001, + "nodeType": "IfStatement", + "src": "3852:164:10", + "trueBody": { + "id": 3987, + "nodeType": "Block", + "src": "3885:48:10", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 3985, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 3978, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "3893:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 3982, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 3979, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "3901:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 3980, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "3901:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3893:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 3983, + "indexExpression": { + "argumentTypes": null, + "id": 3981, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3959, + "src": "3913:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3893:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "hexValue": "30", + "id": 3984, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3925:1:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "3893:33:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 3986, + "nodeType": "ExpressionStatement", + "src": "3893:33:10" + } + ] + } + }, + { + "eventCall": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 4003, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "4035:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 4004, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4035:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 4005, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3959, + "src": "4047:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 4006, + "name": "allowed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3785, + "src": "4057:7:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + } + }, + "id": 4009, + "indexExpression": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 4007, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4033, + "src": "4065:3:10", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 4008, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "sender", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "4065:10:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4057:19:10", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 4011, + "indexExpression": { + "argumentTypes": null, + "id": 4010, + "name": "_spender", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 3959, + "src": "4077:8:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4057:29:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 4002, + "name": "Approval", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 521, + "src": "4026:8:10", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$", + "typeString": "function (address,address,uint256)" + } + }, + "id": 4012, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "4026:61:10", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 4013, + "nodeType": "EmitStatement", + "src": "4021:66:10" + }, + { + "expression": { + "argumentTypes": null, + "hexValue": "74727565", + "id": 4014, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4100:4:10", + "subdenomination": null, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 3965, + "id": 4015, + "nodeType": "Return", + "src": "4093:11:10" + } + ] + }, + "documentation": "@dev Decrease the amount of tokens that an owner allowed to a spender.\napprove should be called when allowed[_spender] == 0. To decrement\nallowed value is better to use this function to avoid 2 calls (and wait until\nthe first transaction is mined)\nFrom MonolithDAO Token.sol\n@param _spender The address which will spend the funds.\n@param _subtractedValue The amount of tokens to decrease the allowance by.", + "id": 4017, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "decreaseApproval", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 3962, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3959, + "name": "_spender", + "nodeType": "VariableDeclaration", + "scope": 4017, + "src": "3709:16:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 3958, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3709:7:10", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 3961, + "name": "_subtractedValue", + "nodeType": "VariableDeclaration", + "scope": 4017, + "src": "3731:24:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 3960, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3731:7:10", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3703:56:10" + }, + "payable": false, + "returnParameters": { + "id": 3965, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 3964, + "name": "", + "nodeType": "VariableDeclaration", + "scope": 4017, + "src": "3784:4:10", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 3963, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3784:4:10", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "3783:6:10" + }, + "scope": 4018, + "src": "3678:431:10", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 4019, + "src": "333:3779:10" + } + ], + "src": "0:4113:10" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "2.0.1", + "updatedAt": "2018-06-21T22:21:14.792Z" +} \ No newline at end of file diff --git a/contracts/AttributeStore.sol b/contracts/AttributeStore.sol new file mode 100644 index 0000000..5093fa9 --- /dev/null +++ b/contracts/AttributeStore.sol @@ -0,0 +1,25 @@ +pragma solidity 0.4.24; + + +library AttributeStore { + struct Data { + mapping(bytes32 => uint) store; + } + + function getAttribute(Data storage self, bytes32 _UUID, string _attrName) + public view returns (uint) + { + bytes32 key = keccak256(abi.encodePacked(_UUID, _attrName)); + return self.store[key]; + } + + function setAttribute( + Data storage self, + bytes32 _UUID, + string _attrName, + uint _attrVal) public + { + bytes32 key = keccak256(abi.encodePacked(_UUID, _attrName)); + self.store[key] = _attrVal; + } +} diff --git a/contracts/BasicToken.sol b/contracts/BasicToken.sol new file mode 100644 index 0000000..387f650 --- /dev/null +++ b/contracts/BasicToken.sol @@ -0,0 +1,50 @@ +pragma solidity 0.4.24; + + +import "./ERC20Basic.sol"; +import "./SafeMath.sol"; + + +/** + * @title Basic token + * @dev Basic version of StandardToken, with no allowances. + */ +contract BasicToken is ERC20Basic { + using SafeMath for uint256; + + mapping(address => uint256) balances; + + uint256 totalSupply_; + + /** + * @dev Total number of tokens in existence + */ + function totalSupply() public view returns (uint256) { + return totalSupply_; + } + + /** + * @dev Transfer token for a specified address + * @param _to The address to transfer to. + * @param _value The amount to be transferred. + */ + function transfer(address _to, uint256 _value) public returns (bool) { + require(_to != address(0)); + require(_value <= balances[msg.sender]); + + balances[msg.sender] = balances[msg.sender].sub(_value); + balances[_to] = balances[_to].add(_value); + emit Transfer(msg.sender, _to, _value); + return true; + } + + /** + * @dev Gets the balance of the specified address. + * @param _owner The address to query the the balance of. + * @return An uint256 representing the amount owned by the passed address. + */ + function balanceOf(address _owner) public view returns (uint256) { + return balances[_owner]; + } + +} diff --git a/contracts/C-Token.sol b/contracts/C-Token.sol deleted file mode 100644 index 0566c65..0000000 --- a/contracts/C-Token.sol +++ /dev/null @@ -1,13 +0,0 @@ -/** - * A placeholder token that, for now simply serves as a lever to force the - * tokens/eip20/EIP20 to build and be available to the js repo - */ - -pragma solidity 0.4.24; - -import "tokens/eip20/EIP20.sol"; - - -contract CToken is EIP20 { - -} diff --git a/contracts/ConstructableToken.sol b/contracts/ConstructableToken.sol new file mode 100644 index 0000000..7ce3473 --- /dev/null +++ b/contracts/ConstructableToken.sol @@ -0,0 +1,21 @@ +pragma solidity 0.4.24; + +import "./StandardToken.sol"; + + +/** + * A subclass of the Open Zeppelin StandardToken with a constructor. + * + * NOTE: This is essentially what O.Z. refers to as a "StandardTokenMock". + * We feel that it is just a subclass that belongs with the other contracts + */ +contract ConstructableToken is StandardToken { + + constructor(address initialAccount, uint256 initialBalance) public { + balances[initialAccount] = initialBalance; + totalSupply_ = initialBalance; + } + +} + + diff --git a/contracts/DLL.sol b/contracts/DLL.sol new file mode 100644 index 0000000..c896bdc --- /dev/null +++ b/contracts/DLL.sol @@ -0,0 +1,91 @@ +pragma solidity 0.4.24; + + +library DLL { + + uint constant NULL_NODE_ID = 0; + + struct Node { + uint next; + uint prev; + } + + struct Data { + mapping(uint => Node) dll; + } + + function isEmpty(Data storage self) public view returns (bool) { + return getStart(self) == NULL_NODE_ID; + } + + function contains(Data storage self, uint _curr) public view returns (bool) { + if (isEmpty(self) || _curr == NULL_NODE_ID) { + return false; + } + + bool isSingleNode = (getStart(self) == _curr) && (getEnd(self) == _curr); + bool isNullNode = (getNext(self, _curr) == NULL_NODE_ID) && (getPrev(self, _curr) == NULL_NODE_ID); + return isSingleNode || !isNullNode; + } + + function getNext(Data storage self, uint _curr) public view returns (uint) { + return self.dll[_curr].next; + } + + function getPrev(Data storage self, uint _curr) public view returns (uint) { + return self.dll[_curr].prev; + } + + function getStart(Data storage self) public view returns (uint) { + return getNext(self, NULL_NODE_ID); + } + + function getEnd(Data storage self) public view returns (uint) { + return getPrev(self, NULL_NODE_ID); + } + + /** + @dev Inserts a new node between _prev and _next. When inserting a node already existing in + the list it will be automatically removed from the old position. + @param _prev the node which _new will be inserted after + @param _curr the id of the new node being inserted + @param _next the node which _new will be inserted before + */ + function insert( + Data storage self, + uint _prev, + uint _curr, + uint _next + ) public + { + require(_curr != NULL_NODE_ID); + + remove(self, _curr); + + require(_prev == NULL_NODE_ID || contains(self, _prev)); + require(_next == NULL_NODE_ID || contains(self, _next)); + + require(getNext(self, _prev) == _next); + require(getPrev(self, _next) == _prev); + + self.dll[_curr].prev = _prev; + self.dll[_curr].next = _next; + + self.dll[_prev].next = _curr; + self.dll[_next].prev = _curr; + } + + function remove(Data storage self, uint _curr) public { + if (!contains(self, _curr)) { + return; + } + + uint next = getNext(self, _curr); + uint prev = getPrev(self, _curr); + + self.dll[next].prev = prev; + self.dll[prev].next = next; + + delete self.dll[_curr]; + } +} diff --git a/contracts/ERC20.sol b/contracts/ERC20.sol new file mode 100644 index 0000000..51ae67a --- /dev/null +++ b/contracts/ERC20.sol @@ -0,0 +1,23 @@ +pragma solidity 0.4.24; + +import "./ERC20Basic.sol"; + + +/** + * @title ERC20 interface + * @dev see https://github.com/ethereum/EIPs/issues/20 + */ +contract ERC20 is ERC20Basic { + function allowance(address owner, address spender) + public view returns (uint256); + + function transferFrom(address from, address to, uint256 value) + public returns (bool); + + function approve(address spender, uint256 value) public returns (bool); + event Approval( + address indexed owner, + address indexed spender, + uint256 value + ); +} diff --git a/contracts/ERC20Basic.sol b/contracts/ERC20Basic.sol new file mode 100644 index 0000000..a7c859c --- /dev/null +++ b/contracts/ERC20Basic.sol @@ -0,0 +1,14 @@ +pragma solidity 0.4.24; + + +/** + * @title ERC20Basic + * @dev Simpler version of ERC20 interface + * See https://github.com/ethereum/EIPs/issues/179 + */ +contract ERC20Basic { + function totalSupply() public view returns (uint256); + function balanceOf(address who) public view returns (uint256); + function transfer(address to, uint256 value) public returns (bool); + event Transfer(address indexed from, address indexed to, uint256 value); +} diff --git a/contracts/PLCRVoting.sol b/contracts/PLCRVoting.sol new file mode 100644 index 0000000..6cf69be --- /dev/null +++ b/contracts/PLCRVoting.sol @@ -0,0 +1,466 @@ +pragma solidity 0.4.24; + +import "./ERC20.sol"; +import "./DLL.sol"; +import "./AttributeStore.sol"; +import "./SafeMath.sol"; + + +/** +@title Partial-Lock-Commit-Reveal Voting scheme with ERC20 tokens +@author Team: Aspyn Palatnick, Cem Ozer, Yorke Rhodes +*/ +contract PLCRVoting { + + // ============ + // EVENTS: + // ============ + + event _VoteCommitted(uint indexed pollID, uint numTokens, address indexed voter); + event _VoteRevealed(uint indexed pollID, uint numTokens, uint votesFor, uint votesAgainst, uint indexed choice, address indexed voter); + event _PollCreated(uint voteQuorum, uint commitEndDate, uint revealEndDate, uint indexed pollID, address indexed creator); + event _VotingRightsGranted(uint numTokens, address indexed voter); + event _VotingRightsWithdrawn(uint numTokens, address indexed voter); + event _TokensRescued(uint indexed pollID, address indexed voter); + + // ============ + // DATA STRUCTURES: + // ============ + + using AttributeStore for AttributeStore.Data; + using DLL for DLL.Data; + using SafeMath for uint; + + struct Poll { + uint commitEndDate; /// expiration date of commit period for poll + uint revealEndDate; /// expiration date of reveal period for poll + uint voteQuorum; /// number of votes required for a proposal to pass + uint votesFor; /// tally of votes supporting proposal + uint votesAgainst; /// tally of votes countering proposal + mapping(address => bool) didCommit; /// indicates whether an address committed a vote for this poll + mapping(address => bool) didReveal; /// indicates whether an address revealed a vote for this poll + } + + // ============ + // STATE VARIABLES: + // ============ + + uint constant public INITIAL_POLL_NONCE = 0; + uint public pollNonce; + + mapping(uint => Poll) public pollMap; // maps pollID to Poll struct + mapping(address => uint) public voteTokenBalance; // maps user's address to voteToken balance + + mapping(address => DLL.Data) dllMap; + AttributeStore.Data store; + + ERC20 public token; + + // ============ + // CONSTRUCTOR: + // ============ + + /** + @dev Initializes voteQuorum, commitDuration, revealDuration, and pollNonce in addition to token contract and trusted mapping + @param _tokenAddr The address where the ERC20 token contract is deployed + */ + constructor(address _tokenAddr) public { + token = ERC20(_tokenAddr); + pollNonce = INITIAL_POLL_NONCE; + } + + // ================ + // TOKEN INTERFACE: + // ================ + + /** + @notice Loads _numTokens ERC20 tokens into the voting contract for one-to-one voting rights + @dev Assumes that msg.sender has approved voting contract to spend on their behalf + @param _numTokens The number of votingTokens desired in exchange for ERC20 tokens + */ + function requestVotingRights(uint _numTokens) external { + require(token.balanceOf(msg.sender) >= _numTokens); + voteTokenBalance[msg.sender] += _numTokens; + require(token.transferFrom(msg.sender, this, _numTokens)); + emit _VotingRightsGranted(_numTokens, msg.sender); + } + + /** + @notice Withdraw _numTokens ERC20 tokens from the voting contract, revoking these voting rights + @param _numTokens The number of ERC20 tokens desired in exchange for voting rights + */ + function withdrawVotingRights(uint _numTokens) external { + uint availableTokens = voteTokenBalance[msg.sender].sub(getLockedTokens(msg.sender)); + require(availableTokens >= _numTokens); + voteTokenBalance[msg.sender] -= _numTokens; + require(token.transfer(msg.sender, _numTokens)); + emit _VotingRightsWithdrawn(_numTokens, msg.sender); + } + + /** + @dev Unlocks tokens locked in unrevealed vote where poll has ended + @param _pollID Integer identifier associated with the target poll + */ + function rescueTokens(uint _pollID) external { + require(isExpired(pollMap[_pollID].revealEndDate)); + require(dllMap[msg.sender].contains(_pollID)); + + dllMap[msg.sender].remove(_pollID); + emit _TokensRescued(_pollID, msg.sender); + } + + // ================= + // VOTING INTERFACE: + // ================= + + /** + @notice Commits vote using hash of choice and secret salt to conceal vote until reveal + @param _pollID Integer identifier associated with target poll + @param _secretHash Commit keccak256 hash of voter's choice and salt (tightly packed in this order) + @param _numTokens The number of tokens to be committed towards the target poll + @param _prevPollID The ID of the poll that the user has voted the maximum number of tokens in which is still less than or equal to numTokens + */ + function commitVote( + uint _pollID, + bytes32 _secretHash, + uint _numTokens, + uint _prevPollID + ) external + { + require(commitPeriodActive(_pollID)); + require(voteTokenBalance[msg.sender] >= _numTokens); // prevent user from overspending + require(_pollID != 0); // prevent user from committing to zero node placeholder + + // Check if _prevPollID exists in the user's DLL or if _prevPollID is 0 + require(_prevPollID == 0 || dllMap[msg.sender].contains(_prevPollID)); + + uint nextPollID = dllMap[msg.sender].getNext(_prevPollID); + + // if nextPollID is equal to _pollID, _pollID is being updated, + nextPollID = (nextPollID == _pollID) ? dllMap[msg.sender].getNext(_pollID) : nextPollID; + + require( + validPosition( + _prevPollID, + nextPollID, + msg.sender, + _numTokens + ) + ); + + dllMap[msg.sender].insert(_prevPollID, _pollID, nextPollID); + + bytes32 UUID = attrUUID(msg.sender, _pollID); + + store.setAttribute(UUID, "numTokens", _numTokens); + store.setAttribute(UUID, "commitHash", uint(_secretHash)); + + pollMap[_pollID].didCommit[msg.sender] = true; + emit _VoteCommitted(_pollID, _numTokens, msg.sender); + } + + /** + @dev Compares previous and next poll's committed tokens for sorting purposes + @param _prevID Integer identifier associated with previous poll in sorted order + @param _nextID Integer identifier associated with next poll in sorted order + @param _voter Address of user to check DLL position for + @param _numTokens The number of tokens to be committed towards the poll (used for sorting) + @return valid Boolean indication of if the specified position maintains the sort + */ + function validPosition( + uint _prevID, + uint _nextID, + address _voter, + uint _numTokens + ) public view returns (bool valid) + { + bool prevValid = (_numTokens >= getNumTokens(_voter, _prevID)); + // if next is zero node, _numTokens does not need to be greater + bool nextValid = (_numTokens <= getNumTokens(_voter, _nextID) || _nextID == 0); + return prevValid && nextValid; + } + + /** + @notice Reveals vote with choice and secret salt used in generating commitHash to attribute committed tokens + @param _pollID Integer identifier associated with target poll + @param _voteOption Vote choice used to generate commitHash for associated poll + @param _salt Secret number used to generate commitHash for associated poll + */ + function revealVote(uint _pollID, uint _voteOption, uint _salt) external { + // Make sure the reveal period is active + require(revealPeriodActive(_pollID)); + require(pollMap[_pollID].didCommit[msg.sender]); // make sure user has committed a vote for this poll + require(!pollMap[_pollID].didReveal[msg.sender]); // prevent user from revealing multiple times + require(keccak256(abi.encodePacked(_voteOption, _salt)) == getCommitHash(msg.sender, _pollID)); // compare resultant hash from inputs to original commitHash + + uint numTokens = getNumTokens(msg.sender, _pollID); + + if (_voteOption == 1) {// apply numTokens to appropriate poll choice + pollMap[_pollID].votesFor += numTokens; + } else { + pollMap[_pollID].votesAgainst += numTokens; + } + + dllMap[msg.sender].remove(_pollID); // remove the node referring to this vote upon reveal + pollMap[_pollID].didReveal[msg.sender] = true; + + emit _VoteRevealed( + _pollID, + numTokens, + pollMap[_pollID].votesFor, + pollMap[_pollID].votesAgainst, + _voteOption, msg.sender + ); + } + + /** + @param _pollID Integer identifier associated with target poll + @param _salt Arbitrarily chosen integer used to generate secretHash + @return correctVotes Number of tokens voted for winning option + */ + function getNumPassingTokens(address _voter, uint _pollID, uint _salt) public view returns (uint correctVotes) { + require(pollEnded(_pollID)); + require(pollMap[_pollID].didReveal[_voter]); + + uint winningChoice = isPassed(_pollID) ? 1 : 0; + bytes32 winnerHash = keccak256(abi.encodePacked(winningChoice, _salt)); + bytes32 commitHash = getCommitHash(_voter, _pollID); + + require(winnerHash == commitHash); + + return getNumTokens(_voter, _pollID); + } + + // ================== + // POLLING INTERFACE: + // ================== + + /** + @dev Initiates a poll with canonical configured parameters at pollID emitted by PollCreated event + @param _voteQuorum Type of majority (out of 100) that is necessary for poll to be successful + @param _commitDuration Length of desired commit period in seconds + @param _revealDuration Length of desired reveal period in seconds + */ + function startPoll(uint _voteQuorum, uint _commitDuration, uint _revealDuration) public returns (uint pollID) { + pollNonce = pollNonce + 1; + + uint commitEndDate = block.timestamp.add(_commitDuration); + uint revealEndDate = commitEndDate.add(_revealDuration); + + pollMap[pollNonce] = Poll({ + voteQuorum: _voteQuorum, + commitEndDate: commitEndDate, + revealEndDate: revealEndDate, + votesFor: 0, + votesAgainst: 0 + }); + + emit _PollCreated( + _voteQuorum, + commitEndDate, + revealEndDate, + pollNonce, + msg.sender + ); + + return pollNonce; + } + + /** + @notice Determines if proposal has passed + @dev Check if votesFor out of totalVotes exceeds votesQuorum (requires pollEnded) + @param _pollID Integer identifier associated with target poll + */ + function isPassed(uint _pollID) view public returns (bool passed) { + require(pollEnded(_pollID)); + + Poll memory poll = pollMap[_pollID]; + return (100 * poll.votesFor) > (poll.voteQuorum * (poll.votesFor + poll.votesAgainst)); + } + + // ---------------- + // POLLING HELPERS: + // ---------------- + + /** + @dev Gets the total winning votes for reward distribution purposes + @param _pollID Integer identifier associated with target poll + @return Total number of votes committed to the winning option for specified poll + */ + function getTotalNumberOfTokensForWinningOption(uint _pollID) view public returns (uint numTokens) { + require(pollEnded(_pollID)); + + if (isPassed(_pollID)) + return pollMap[_pollID].votesFor; + else + return pollMap[_pollID].votesAgainst; + } + + /** + @notice Determines if poll is over + @dev Checks isExpired for specified poll's revealEndDate + @return Boolean indication of whether polling period is over + */ + function pollEnded(uint _pollID) view public returns (bool ended) { + require(pollExists(_pollID)); + + return isExpired(pollMap[_pollID].revealEndDate); + } + + /** + @notice Checks if the commit period is still active for the specified poll + @dev Checks isExpired for the specified poll's commitEndDate + @param _pollID Integer identifier associated with target poll + @return Boolean indication of isCommitPeriodActive for target poll + */ + function commitPeriodActive(uint _pollID) view public returns (bool active) { + require(pollExists(_pollID)); + + return !isExpired(pollMap[_pollID].commitEndDate); + } + + /** + @notice Checks if the reveal period is still active for the specified poll + @dev Checks isExpired for the specified poll's revealEndDate + @param _pollID Integer identifier associated with target poll + */ + function revealPeriodActive(uint _pollID) view public returns (bool active) { + require(pollExists(_pollID)); + + return !isExpired(pollMap[_pollID].revealEndDate) && !commitPeriodActive(_pollID); + } + + /** + @dev Checks if user has committed for specified poll + @param _voter Address of user to check against + @param _pollID Integer identifier associated with target poll + @return Boolean indication of whether user has committed + */ + function didCommit(address _voter, uint _pollID) view public returns (bool committed) { + require(pollExists(_pollID)); + + return pollMap[_pollID].didCommit[_voter]; + } + + /** + @dev Checks if user has revealed for specified poll + @param _voter Address of user to check against + @param _pollID Integer identifier associated with target poll + @return Boolean indication of whether user has revealed + */ + function didReveal(address _voter, uint _pollID) view public returns (bool revealed) { + require(pollExists(_pollID)); + + return pollMap[_pollID].didReveal[_voter]; + } + + /** + @dev Checks if a poll exists + @param _pollID The pollID whose existance is to be evaluated. + @return Boolean Indicates whether a poll exists for the provided pollID + */ + function pollExists(uint _pollID) view public returns (bool exists) { + return (_pollID != 0 && _pollID <= pollNonce); + } + + // --------------------------- + // DOUBLE-LINKED-LIST HELPERS: + // --------------------------- + + /** + @dev Gets the bytes32 commitHash property of target poll + @param _voter Address of user to check against + @param _pollID Integer identifier associated with target poll + @return Bytes32 hash property attached to target poll + */ + function getCommitHash(address _voter, uint _pollID) view public returns (bytes32 commitHash) { + return bytes32(store.getAttribute(attrUUID(_voter, _pollID), "commitHash")); + } + + /** + @dev Wrapper for getAttribute with attrName="numTokens" + @param _voter Address of user to check against + @param _pollID Integer identifier associated with target poll + @return Number of tokens committed to poll in sorted poll-linked-list + */ + function getNumTokens(address _voter, uint _pollID) view public returns (uint numTokens) { + return store.getAttribute(attrUUID(_voter, _pollID), "numTokens"); + } + + /** + @dev Gets top element of sorted poll-linked-list + @param _voter Address of user to check against + @return Integer identifier to poll with maximum number of tokens committed to it + */ + function getLastNode(address _voter) view public returns (uint pollID) { + return dllMap[_voter].getPrev(0); + } + + /** + @dev Gets the numTokens property of getLastNode + @param _voter Address of user to check against + @return Maximum number of tokens committed in poll specified + */ + function getLockedTokens(address _voter) view public returns (uint numTokens) { + return getNumTokens(_voter, getLastNode(_voter)); + } + + /* + @dev Takes the last node in the user's DLL and iterates backwards through the list searching + for a node with a value less than or equal to the provided _numTokens value. When such a node + is found, if the provided _pollID matches the found nodeID, this operation is an in-place + update. In that case, return the previous node of the node being updated. Otherwise return the + first node that was found with a value less than or equal to the provided _numTokens. + @param _voter The voter whose DLL will be searched + @param _numTokens The value for the numTokens attribute in the node to be inserted + @return the node which the propoded node should be inserted after + */ + function getInsertPointForNumTokens(address _voter, uint _numTokens, uint _pollID) + view public returns (uint prevNode) + { + // Get the last node in the list and the number of tokens in that node + uint nodeID = getLastNode(_voter); + uint tokensInNode = getNumTokens(_voter, nodeID); + + // Iterate backwards through the list until reaching the root node + while (nodeID != 0) { + // Get the number of tokens in the current node + tokensInNode = getNumTokens(_voter, nodeID); + if (tokensInNode <= _numTokens) { // We found the insert point! + if (nodeID == _pollID) { + // This is an in-place update. Return the prev node of the node being updated + nodeID = dllMap[_voter].getPrev(nodeID); + } + // Return the insert point + return nodeID; + } + // We did not find the insert point. Continue iterating backwards through the list + nodeID = dllMap[_voter].getPrev(nodeID); + } + + // The list is empty, or a smaller value than anything else in the list is being inserted + return nodeID; + } + + // ---------------- + // GENERAL HELPERS: + // ---------------- + + /** + @dev Checks if an expiration date has been reached + @param _terminationDate Integer timestamp of date to compare current timestamp with + @return expired Boolean indication of whether the terminationDate has passed + */ + function isExpired(uint _terminationDate) view public returns (bool expired) { + return (block.timestamp > _terminationDate); + } + + /** + @dev Generates an identifier which associates a user and a poll together + @param _pollID Integer identifier associated with target poll + @return UUID Hash which is deterministic from _user and _pollID + */ + function attrUUID(address _user, uint _pollID) public pure returns (bytes32 UUID) { + return keccak256(abi.encodePacked(_user, _pollID)); + } +} diff --git a/contracts/Parameterizer.sol b/contracts/Parameterizer.sol index 3a5a3bb..9de191a 100644 --- a/contracts/Parameterizer.sol +++ b/contracts/Parameterizer.sol @@ -1,8 +1,8 @@ pragma solidity 0.4.24; -import "plcrvoting/PLCRVoting.sol"; -import "tokens/eip20/EIP20Interface.sol"; -import "zeppelin/math/SafeMath.sol"; +import "./PLCRVoting.sol"; +import "./ERC20.sol"; +import "./SafeMath.sol"; contract Parameterizer { @@ -58,7 +58,7 @@ contract Parameterizer { mapping(bytes32 => ParamProposal) public proposals; // Global Variables - EIP20Interface public token; + ERC20 public token; PLCRVoting public voting; uint public PROCESSBY = 604800; // 7 days @@ -83,7 +83,7 @@ contract Parameterizer { @param _voteQuorum type of majority out of 100 necessary for vote success @param _pVoteQuorum type of majority out of 100 necessary for vote success in parameterizer */ - function Parameterizer( + constructor( address _tokenAddr, address _plcrAddr, uint _minDeposit, @@ -100,7 +100,7 @@ contract Parameterizer { uint _pVoteQuorum ) public { - token = EIP20Interface(_tokenAddr); + token = ERC20(_tokenAddr); voting = PLCRVoting(_plcrAddr); set("minDeposit", _minDeposit); @@ -128,10 +128,10 @@ contract Parameterizer { */ function proposeReparameterization(string _name, uint _value) public returns (bytes32) { uint deposit = get("pMinDeposit"); - bytes32 propID = keccak256(_name, _value); + bytes32 propID = keccak256(abi.encodePacked(_name, _value)); - if (keccak256(_name) == keccak256("dispensationPct") || - keccak256(_name) == keccak256("pDispensationPct")) { + if (keccak256(abi.encodePacked(_name)) == keccak256(abi.encodePacked("dispensationPct")) || + keccak256(abi.encodePacked(_name)) == keccak256(abi.encodePacked("pDispensationPct"))) { require(_value <= 100); } @@ -154,7 +154,15 @@ contract Parameterizer { require(token.transferFrom(msg.sender, this, deposit)); // escrow tokens (deposit amt) - emit _ReparameterizationProposal(_name, _value, propID, deposit, proposals[propID].appExpiry, msg.sender); + emit _ReparameterizationProposal( + _name, + _value, + propID, + deposit, + proposals[propID].appExpiry, + msg.sender + ); + return propID; } @@ -191,8 +199,15 @@ contract Parameterizer { uint commitEndDate; uint revealEndDate; (commitEndDate, revealEndDate,) = voting.pollMap(pollID); - - emit _NewChallenge(_propID, pollID, commitEndDate, revealEndDate, msg.sender); + + emit _NewChallenge( + _propID, + pollID, + commitEndDate, + revealEndDate, + msg.sender + ); + return pollID; } @@ -332,7 +347,7 @@ contract Parameterizer { @param _name the key whose value is to be determined */ function get(string _name) public view returns (uint value) { - return params[keccak256(_name)]; + return params[keccak256(abi.encodePacked(_name))]; } /** @@ -366,10 +381,22 @@ contract Parameterizer { if (prop.processBy > now) { set(prop.name, prop.value); } - emit _ChallengeFailed(_propID, prop.challengeID, challenge.rewardPool, challenge.winningTokens); + emit _ChallengeFailed( + _propID, + prop.challengeID, + challenge.rewardPool, + challenge.winningTokens + ); + require(token.transfer(prop.owner, reward)); } else { // The challenge succeeded or nobody voted - emit _ChallengeSucceeded(_propID, prop.challengeID, challenge.rewardPool, challenge.winningTokens); + emit _ChallengeSucceeded( + _propID, + prop.challengeID, + challenge.rewardPool, + challenge.winningTokens + ); + require(token.transfer(challenges[prop.challengeID].challenger, reward)); } } @@ -380,6 +407,6 @@ contract Parameterizer { @param _value the value to set the param to be set */ function set(string _name, uint _value) private { - params[keccak256(_name)] = _value; + params[keccak256(abi.encodePacked(_name))] = _value; } } diff --git a/contracts/Registry.sol b/contracts/Registry.sol index b17c4ff..1a52826 100644 --- a/contracts/Registry.sol +++ b/contracts/Registry.sol @@ -1,9 +1,10 @@ pragma solidity 0.4.24; -import "tokens/eip20/EIP20Interface.sol"; +import "./ERC20.sol"; import "./Parameterizer.sol"; -import "plcrvoting/PLCRVoting.sol"; -import "zeppelin/math/SafeMath.sol"; +import "./PLCRVoting.sol"; +import "./SafeMath.sol"; + contract Registry { @@ -50,7 +51,7 @@ contract Registry { mapping(bytes32 => Listing) public listings; // Global Variables - EIP20Interface public token; + ERC20 public token; PLCRVoting public voting; Parameterizer public parameterizer; string public name; @@ -65,14 +66,14 @@ contract Registry { @param _plcrAddr Address of a PLCR voting contract for the provided token @param _paramsAddr Address of a Parameterizer contract */ - function Registry( + constructor( address _tokenAddr, address _plcrAddr, address _paramsAddr, string _name ) public { - token = EIP20Interface(_tokenAddr); + token = ERC20(_tokenAddr); voting = PLCRVoting(_plcrAddr); parameterizer = Parameterizer(_paramsAddr); name = _name; @@ -105,7 +106,13 @@ contract Registry { // Transfers tokens from user to Registry contract require(token.transferFrom(listing.owner, this, _amount)); - _Application(_listingHash, _amount, listing.applicationExpiry, _data, msg.sender); + emit _Application( + _listingHash, + _amount, + listing.applicationExpiry, + _data, + msg.sender + ); } /** @@ -121,7 +128,12 @@ contract Registry { listing.unstakedDeposit += _amount; require(token.transferFrom(msg.sender, this, _amount)); - _Deposit(_listingHash, _amount, listing.unstakedDeposit, msg.sender); + emit _Deposit( + _listingHash, + _amount, + listing.unstakedDeposit, + msg.sender + ); } /** @@ -139,7 +151,12 @@ contract Registry { listing.unstakedDeposit -= _amount; require(token.transfer(msg.sender, _amount)); - _Withdrawal(_listingHash, _amount, listing.unstakedDeposit, msg.sender); + emit _Withdrawal( + _listingHash, + _amount, + listing.unstakedDeposit, + msg.sender + ); } /** @@ -158,7 +175,7 @@ contract Registry { // Remove listingHash & return tokens resetListing(_listingHash); - _ListingWithdrawn(_listingHash); + emit _ListingWithdrawn(_listingHash); } // ----------------------- @@ -174,31 +191,31 @@ contract Registry { */ function challenge(bytes32 _listingHash, string _data) external returns (uint challengeID) { Listing storage listing = listings[_listingHash]; - uint deposit = parameterizer.get("minDeposit"); + uint minDeposit = parameterizer.get("minDeposit"); // Listing must be in apply stage or already on the whitelist require(appWasMade(_listingHash) || listing.whitelisted); // Prevent multiple challenges require(listing.challengeID == 0 || challenges[listing.challengeID].resolved); - if (listing.unstakedDeposit < deposit) { + if (listing.unstakedDeposit < minDeposit) { // Not enough tokens, listingHash auto-delisted resetListing(_listingHash); - _TouchAndRemoved(_listingHash); + emit _TouchAndRemoved(_listingHash); return 0; } // Starts poll uint pollID = voting.startPoll( - parameterizer.get("voteQuorum"), - parameterizer.get("commitStageLen"), - parameterizer.get("revealStageLen") + parameterizer.get("voteQuorum"), + parameterizer.get("commitStageLen"), + parameterizer.get("revealStageLen") ); challenges[pollID] = Challenge({ challenger: msg.sender, - rewardPool: ((100 - parameterizer.get("dispensationPct")) * deposit) / 100, - stake: deposit, + rewardPool: ((100 - parameterizer.get("dispensationPct")) * minDeposit) / 100, + stake: minDeposit, resolved: false, totalTokens: 0 }); @@ -207,16 +224,24 @@ contract Registry { listing.challengeID = pollID; // Locks tokens for listingHash during challenge - listing.unstakedDeposit -= deposit; + listing.unstakedDeposit -= minDeposit; // Takes tokens from challenger - require(token.transferFrom(msg.sender, this, deposit)); + require(token.transferFrom(msg.sender, this, minDeposit)); uint commitEndDate; uint revealEndDate; (commitEndDate, revealEndDate,) = voting.pollMap(pollID); - - _Challenge(_listingHash, pollID, _data, commitEndDate, revealEndDate, msg.sender); + + emit _Challenge( + _listingHash, + pollID, + _data, + commitEndDate, + revealEndDate, + msg.sender + ); + return pollID; } @@ -263,7 +288,7 @@ contract Registry { require(token.transfer(msg.sender, reward)); - _RewardClaimed(_challengeID, reward, msg.sender); + emit _RewardClaimed(_challengeID, reward, msg.sender); } // -------- @@ -305,7 +330,7 @@ contract Registry { /* solium-disable-next-line */ !isWhitelisted(_listingHash) && (challengeID == 0 || challenges[challengeID].resolved == true) - ) { return true; } + ) {return true;} return false; } @@ -401,13 +426,23 @@ contract Registry { // Unlock stake so that it can be retrieved by the applicant listings[_listingHash].unstakedDeposit += reward; - _ChallengeFailed(_listingHash, challengeID, challenges[challengeID].rewardPool, challenges[challengeID].totalTokens); + emit _ChallengeFailed( + _listingHash, + challengeID, + challenges[challengeID].rewardPool, + challenges[challengeID].totalTokens + ); } else { // Case: challenge succeeded or nobody voted resetListing(_listingHash); // Transfer the reward to the challenger require(token.transfer(challenges[challengeID].challenger, reward)); - _ChallengeSucceeded(_listingHash, challengeID, challenges[challengeID].rewardPool, challenges[challengeID].totalTokens); + emit _ChallengeSucceeded( + _listingHash, + challengeID, + challenges[challengeID].rewardPool, + challenges[challengeID].totalTokens + ); } } @@ -418,7 +453,7 @@ contract Registry { @param _listingHash The listingHash of an application/listingHash to be whitelisted */ function whitelistApplication(bytes32 _listingHash) private { - if (!listings[_listingHash].whitelisted) { _ApplicationWhitelisted(_listingHash); } + if (!listings[_listingHash].whitelisted) {emit _ApplicationWhitelisted(_listingHash);} listings[_listingHash].whitelisted = true; } @@ -431,9 +466,9 @@ contract Registry { // Emit events before deleting listing to check whether is whitelisted if (listing.whitelisted) { - _ListingRemoved(_listingHash); + emit _ListingRemoved(_listingHash); } else { - _ApplicationRemoved(_listingHash); + emit _ApplicationRemoved(_listingHash); } // Deleting listing to prevent reentry diff --git a/contracts/SafeMath.sol b/contracts/SafeMath.sol new file mode 100644 index 0000000..14b4e20 --- /dev/null +++ b/contracts/SafeMath.sol @@ -0,0 +1,52 @@ +pragma solidity 0.4.24; + + +/** + * @title SafeMath + * @dev Math operations with safety checks that throw on error + */ +library SafeMath { + + /** + * @dev Multiplies two numbers, throws on overflow. + */ + function mul(uint256 a, uint256 b) internal pure returns (uint256 c) { + // Gas optimization: this is cheaper than asserting 'a' not being zero, but the + // benefit is lost if 'b' is also tested. + // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522 + if (a == 0) { + return 0; + } + + c = a * b; + assert(c / a == b); + return c; + } + + /** + * @dev Integer division of two numbers, truncating the quotient. + */ + function div(uint256 a, uint256 b) internal pure returns (uint256) { + // assert(b > 0); // Solidity automatically throws when dividing by 0 + // uint256 c = a / b; + // assert(a == b * c + a % b); // There is no case in which this doesn't hold + return a / b; + } + + /** + * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend). + */ + function sub(uint256 a, uint256 b) internal pure returns (uint256) { + assert(b <= a); + return a - b; + } + + /** + * @dev Adds two numbers, throws on overflow. + */ + function add(uint256 a, uint256 b) internal pure returns (uint256 c) { + c = a + b; + assert(c >= a); + return c; + } +} diff --git a/contracts/StandardToken.sol b/contracts/StandardToken.sol new file mode 100644 index 0000000..68ad437 --- /dev/null +++ b/contracts/StandardToken.sol @@ -0,0 +1,124 @@ +pragma solidity 0.4.24; + +import "./BasicToken.sol"; +import "./ERC20.sol"; + + +/** + * @title Standard ERC20 token + * + * @dev Implementation of the basic standard token. + * https://github.com/ethereum/EIPs/issues/20 + * Based on code by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol + */ +contract StandardToken is ERC20, BasicToken { + + mapping (address => mapping (address => uint256)) internal allowed; + + + /** + * @dev Transfer tokens from one address to another + * @param _from address The address which you want to send tokens from + * @param _to address The address which you want to transfer to + * @param _value uint256 the amount of tokens to be transferred + */ + function transferFrom( + address _from, + address _to, + uint256 _value + ) + public + returns (bool) + { + require(_to != address(0)); + require(_value <= balances[_from]); + require(_value <= allowed[_from][msg.sender]); + + balances[_from] = balances[_from].sub(_value); + balances[_to] = balances[_to].add(_value); + allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value); + emit Transfer(_from, _to, _value); + return true; + } + + /** + * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender. + * Beware that changing an allowance with this method brings the risk that someone may use both the old + * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this + * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: + * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 + * @param _spender The address which will spend the funds. + * @param _value The amount of tokens to be spent. + */ + function approve(address _spender, uint256 _value) public returns (bool) { + allowed[msg.sender][_spender] = _value; + emit Approval(msg.sender, _spender, _value); + return true; + } + + /** + * @dev Function to check the amount of tokens that an owner allowed to a spender. + * @param _owner address The address which owns the funds. + * @param _spender address The address which will spend the funds. + * @return A uint256 specifying the amount of tokens still available for the spender. + */ + function allowance( + address _owner, + address _spender + ) + public + view + returns (uint256) + { + return allowed[_owner][_spender]; + } + + /** + * @dev Increase the amount of tokens that an owner allowed to a spender. + * approve should be called when allowed[_spender] == 0. To increment + * allowed value is better to use this function to avoid 2 calls (and wait until + * the first transaction is mined) + * From MonolithDAO Token.sol + * @param _spender The address which will spend the funds. + * @param _addedValue The amount of tokens to increase the allowance by. + */ + function increaseApproval( + address _spender, + uint256 _addedValue + ) + public + returns (bool) + { + allowed[msg.sender][_spender] = ( + allowed[msg.sender][_spender].add(_addedValue)); + emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); + return true; + } + + /** + * @dev Decrease the amount of tokens that an owner allowed to a spender. + * approve should be called when allowed[_spender] == 0. To decrement + * allowed value is better to use this function to avoid 2 calls (and wait until + * the first transaction is mined) + * From MonolithDAO Token.sol + * @param _spender The address which will spend the funds. + * @param _subtractedValue The amount of tokens to decrease the allowance by. + */ + function decreaseApproval( + address _spender, + uint256 _subtractedValue + ) + public + returns (bool) + { + uint256 oldValue = allowed[msg.sender][_spender]; + if (_subtractedValue > oldValue) { + allowed[msg.sender][_spender] = 0; + } else { + allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue); + } + emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]); + return true; + } + +} diff --git a/package.json b/package.json index ab76e4a..a1aafc8 100644 --- a/package.json +++ b/package.json @@ -27,7 +27,7 @@ }, "homepage": "https://github.com/computablelabs/computable", "devDependencies": { - "solium": "^1.1.2", + "solium": "^1.1.7", "truffle": "^4.1.12" }, "dependencies": {