jcc-solidity-utils
Version:
jcc solidity utils
26,408 lines • 1.14 MB
JSON
{
"contractName": "CommandList",
"abi": [],
"metadata": "{\"compiler\":{\"version\":\"0.4.24+commit.e67f0147\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/list/CommandList.sol\":\"CommandList\"},\"evmVersion\":\"byzantium\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/list/CommandList.sol\":{\"keccak256\":\"0xa7a58e682db5b59a10603a8bb02bf151802b462be21279d79fd594b34f49ad26\",\"urls\":[\"bzzr://c13f88bce10557ebe54f6e9f5767240be8a1c1c9b6d19bfb57178b9e2f19a7d6\"]},\"/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/math/SafeMath.sol\":{\"keccak256\":\"0x239546071316c89d3bbc9e61b2ccae270a4493bbd2f7c240052f533807d50ab7\",\"urls\":[\"bzzr://267bf48e0a30f7b671aa3c98a6b27ffe7bc64efd6533f49e54188b520baa94c5\"]}},\"version\":1}",
"bytecode": "0x604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a72305820edec1f5f4cc86cd31d5054f242a4d0efd448ac2fa5cb9b58fa92db21862c83870029",
"deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fd00a165627a7a72305820edec1f5f4cc86cd31d5054f242a4d0efd448ac2fa5cb9b58fa92db21862c83870029",
"sourceMap": "126:9106:15:-;;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": "126:9106:15:-;;;;;;;;",
"source": "pragma solidity >=0.4.24;\n\nimport \"../math/SafeMath.sol\";\n// import \"./TransferList.sol\";\n\n/**\n * @dev 通证列表处理\n */\nlibrary CommandList {\n using SafeMath for uint256;\n\n enum Verbs {TRANSFER, EXCHANGE, EXECUTE}\n\n // 通证定义\n struct element {\n // 提交人\n address submitter;\n // 处理人\n address agent;\n // 从哪条链,遵循BIP44\n uint256 fromChain;\n // 跨到哪条链,遵循BIP44\n uint256 toChain;\n // 操作 0 transfer 1 exchange 2 execute\n uint256 verbs;\n // 状态 1表示提交等待锁定处理,2表示被锁定 3表示部分已经处理剩余解除锁定等待处理 4撤销处理 5处理完毕订单关闭\n uint256 status;\n // 细节数据索引位置, payload类型有三种: Transfer, Exchange, Execute\n bytes32 payloadHash;\n }\n\n struct commandMap {\n // data array 单向增加\n element[] list;\n // new fresh command\n uint256[] waiting;\n // locking command for process\n uint256[] locking;\n // canceled command:用户主动取消或者公证人取消\n uint256[] canceled;\n // completed command\n uint256[] completed;\n // 提交人命令清单,数组单向增加\n mapping(address => uint256[]) submitterCmds;\n // 处理人命令清单,数组单向增加\n mapping(address => uint256[]) agentCmds;\n }\n\n modifier validVerbs(uint256 _verbs) {\n require(\n _verbs == uint256(Verbs.TRANSFER) ||\n _verbs == uint256(Verbs.EXCHANGE) ||\n _verbs == uint256(Verbs.EXECUTE),\n \"invalid verbs\"\n );\n _;\n }\n\n function exist(commandMap storage self, uint256 _idx)\n internal\n view\n returns (bool)\n {\n if (_idx >= self.list.length) return false;\n return true;\n }\n\n // 增加跨链转账指令,单向增长\n function insert(\n commandMap storage self,\n address _submitter,\n uint256 _fromChain,\n uint256 _toChain,\n uint256 _verbs,\n bytes32 _payloadHash\n ) internal validVerbs(_verbs) returns (uint256) {\n element memory e = element({\n submitter: _submitter,\n agent: address(0),\n fromChain: _fromChain,\n toChain: _toChain,\n verbs: _verbs,\n status: 1,\n payloadHash: _payloadHash\n });\n\n uint256 _idx = self.list.length;\n self.list.push(e);\n self.waiting.push(_idx);\n self.submitterCmds[_submitter].push(_idx);\n\n return _idx;\n }\n\n function getIdx(uint256[] _arr, uint256 _idx)\n internal\n pure\n returns (bool, uint256)\n {\n if (_arr.length == 0) {\n return (false, 0);\n }\n for (uint256 i = _arr.length - 1; i > 0; i--) {\n if (_arr[i] == _idx) {\n return (true, i);\n }\n }\n\n return _arr[0] == _idx ? (true, 0) : (false, 0);\n }\n\n function lock(commandMap storage self, address _agent, uint256 _idx)\n internal\n returns (bool)\n {\n require(exist(self, _idx), \"lock command does not exist\");\n\n // get idx from waiting\n uint256 _waitingIdx;\n bool _exist;\n (_exist, _waitingIdx) = getIdx(self.waiting, _idx);\n require(_exist, \"idx does not exist in waiting list\");\n\n // remove idx from waiting\n self.waiting[_waitingIdx] = self.waiting[self.waiting.length.sub(1)];\n self.waiting.length = self.waiting.length.sub(1);\n\n // add idx to lock\n self.locking.push(_idx);\n // update to agent mapping\n self.list[_idx].agent = _agent;\n self.list[_idx].status = 2;\n self.agentCmds[_agent].push(_idx);\n\n return true;\n }\n\n function cancelFromWaiting(commandMap storage self, uint256 _idx)\n internal\n returns (bool)\n {\n // get idx from waiting\n uint256 _waitingIdx;\n bool _exist;\n (_exist, _waitingIdx) = getIdx(self.waiting, _idx);\n require(_exist, \"idx does not exist in waiting list\");\n\n // remove idx from waiting 0\n self.waiting[_waitingIdx] = self.waiting[self.waiting.length.sub(1)];\n self.waiting.length = self.waiting.length.sub(1);\n\n // add idx to canceled\n self.canceled.push(_idx);\n self.list[_idx].status = 4;\n\n return true;\n }\n\n function cancel(commandMap storage self, address _agent, uint256 _idx)\n internal\n returns (bool)\n {\n require(exist(self, _idx), \"lock command does not exist\");\n require(\n self.list[_idx].status != 4 && self.list[_idx].status != 5,\n \"lock command status can not be canceled or done\"\n );\n\n // in waiting list\n if (self.list[_idx].status == 1) {\n // 调用者要检查msg.sender\n require(\n _agent == self.list[_idx].submitter,\n \"user only cancel him own command\"\n );\n return cancelFromWaiting(self, _idx);\n }\n\n // 代理取消\n // get idx from locking\n uint256 _lockingIdx;\n bool _exist;\n (_exist, _lockingIdx) = getIdx(self.locking, _idx);\n require(_exist, \"idx does not exist in locking list\");\n require(_agent == self.list[_idx].agent, \"agent cancel command himself\");\n\n // remove idx from locking\n self.locking[_lockingIdx] = self.locking[self.locking.length.sub(1)];\n self.locking.length = self.locking.length.sub(1);\n\n // add idx to canceled\n self.canceled.push(_idx);\n self.list[_idx].status = 4;\n\n return true;\n }\n\n function complete(commandMap storage self, address _agent, uint256 _idx)\n internal\n returns (bool)\n {\n require(exist(self, _idx), \"lock command does not exist\");\n // 只有被锁定的才能结束\n require(\n self.list[_idx].status == 2,\n \"lock command status can be completed\"\n );\n require(_agent == self.list[_idx].agent, \"agent cancel command himself\");\n\n // get idx from locking\n uint256 _lockingIdx;\n bool _exist;\n (_exist, _lockingIdx) = getIdx(self.locking, _idx);\n require(_exist, \"idx does not exist in locking list\");\n\n // remove idx from locking\n self.locking[_lockingIdx] = self.locking[self.locking.length.sub(1)];\n self.locking.length = self.locking.length.sub(1);\n\n // add idx to completed\n self.completed.push(_idx);\n self.list[_idx].status = 5;\n\n return true;\n }\n\n function count(commandMap storage self) internal view returns (uint256) {\n return self.list.length;\n }\n\n function countWaiting(commandMap storage self)\n internal\n view\n returns (uint256)\n {\n return self.waiting.length;\n }\n\n function countLocking(commandMap storage self)\n internal\n view\n returns (uint256)\n {\n return self.locking.length;\n }\n\n function countCanceled(commandMap storage self)\n internal\n view\n returns (uint256)\n {\n return self.canceled.length;\n }\n\n function countCompleted(commandMap storage self)\n internal\n view\n returns (uint256)\n {\n return self.completed.length;\n }\n\n function countBySubmitter(commandMap storage self, address _submitter)\n internal\n view\n returns (uint256)\n {\n return self.submitterCmds[_submitter].length;\n }\n\n function countByAgent(commandMap storage self, address _agent)\n internal\n view\n returns (uint256)\n {\n return self.agentCmds[_agent].length;\n }\n\n function getByIdx(commandMap storage self, uint256 _idx)\n internal\n view\n returns (CommandList.element)\n {\n require(_idx < self.list.length, \"index must small than current count\");\n return self.list[_idx];\n }\n\n function getIdxBySubmitter(commandMap storage self, address _submitter)\n internal\n view\n returns (uint256[])\n {\n return self.submitterCmds[_submitter];\n }\n\n function getIdxByAgent(commandMap storage self, address _agent)\n internal\n view\n returns (uint256[])\n {\n return self.agentCmds[_agent];\n }\n\n function getWaitingIdx(commandMap storage self)\n internal\n view\n returns (uint256[])\n {\n return self.waiting;\n }\n\n function getLockingIdx(commandMap storage self)\n internal\n view\n returns (uint256[])\n {\n return self.locking;\n }\n\n function getElement(\n commandMap storage self,\n uint256[] _arr,\n uint256 _from,\n uint256 _count\n ) internal view returns (CommandList.element[] memory) {\n uint256 _idx = 0;\n require(_count > 0, \"return number must bigger than 0\");\n CommandList.element[] memory res = new CommandList.element[](_count);\n\n for (uint256 i = _from; i < _arr.length; i++) {\n if (_idx == _count) {\n break;\n }\n\n res[_idx] = self.list[_arr[i]];\n _idx = _idx.add(1);\n }\n\n return res;\n }\n\n function getBySubmitter(\n commandMap storage self,\n address _submitter,\n uint256 _from,\n uint256 _count\n ) internal view returns (CommandList.element[] memory) {\n return getElement(self, self.submitterCmds[_submitter], _from, _count);\n }\n\n function getByAgent(\n commandMap storage self,\n address _agent,\n uint256 _from,\n uint256 _count\n ) internal view returns (CommandList.element[] memory) {\n return getElement(self, self.agentCmds[_agent], _from, _count);\n }\n\n function getByCanceled(commandMap storage self, uint256 _from, uint256 _count)\n internal\n view\n returns (CommandList.element[] memory)\n {\n return getElement(self, self.canceled, _from, _count);\n }\n\n function getByCompleted(\n commandMap storage self,\n uint256 _from,\n uint256 _count\n ) internal view returns (CommandList.element[] memory) {\n return getElement(self, self.completed, _from, _count);\n }\n}\n",
"sourcePath": "/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/list/CommandList.sol",
"ast": {
"absolutePath": "/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/list/CommandList.sol",
"exportedSymbols": {
"CommandList": [
3760
]
},
"id": 3761,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 2748,
"literals": [
"solidity",
">=",
"0.4",
".24"
],
"nodeType": "PragmaDirective",
"src": "0:25:15"
},
{
"absolutePath": "/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/math/SafeMath.sol",
"file": "../math/SafeMath.sol",
"id": 2749,
"nodeType": "ImportDirective",
"scope": 3761,
"sourceUnit": 5658,
"src": "27:30:15",
"symbolAliases": [],
"unitAlias": ""
},
{
"baseContracts": [],
"contractDependencies": [],
"contractKind": "library",
"documentation": "@dev 通证列表处理",
"fullyImplemented": true,
"id": 3760,
"linearizedBaseContracts": [
3760
],
"name": "CommandList",
"nodeType": "ContractDefinition",
"nodes": [
{
"id": 2752,
"libraryName": {
"contractScope": null,
"id": 2750,
"name": "SafeMath",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 5657,
"src": "156:8:15",
"typeDescriptions": {
"typeIdentifier": "t_contract$_SafeMath_$5657",
"typeString": "library SafeMath"
}
},
"nodeType": "UsingForDirective",
"src": "150:27:15",
"typeName": {
"id": 2751,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "169:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
},
{
"canonicalName": "CommandList.Verbs",
"id": 2756,
"members": [
{
"id": 2753,
"name": "TRANSFER",
"nodeType": "EnumValue",
"src": "193:8:15"
},
{
"id": 2754,
"name": "EXCHANGE",
"nodeType": "EnumValue",
"src": "203:8:15"
},
{
"id": 2755,
"name": "EXECUTE",
"nodeType": "EnumValue",
"src": "213:7:15"
}
],
"name": "Verbs",
"nodeType": "EnumDefinition",
"src": "181:40:15"
},
{
"canonicalName": "CommandList.element",
"id": 2771,
"members": [
{
"constant": false,
"id": 2758,
"name": "submitter",
"nodeType": "VariableDeclaration",
"scope": 2771,
"src": "281:17:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 2757,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "281:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2760,
"name": "agent",
"nodeType": "VariableDeclaration",
"scope": 2771,
"src": "321:13:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 2759,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "321:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2762,
"name": "fromChain",
"nodeType": "VariableDeclaration",
"scope": 2771,
"src": "372:17:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2761,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "372:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2764,
"name": "toChain",
"nodeType": "VariableDeclaration",
"scope": 2771,
"src": "430:15:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2763,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "430:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2766,
"name": "verbs",
"nodeType": "VariableDeclaration",
"scope": 2771,
"src": "497:13:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2765,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "497:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2768,
"name": "status",
"nodeType": "VariableDeclaration",
"scope": 2771,
"src": "677:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2767,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "677:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2770,
"name": "payloadHash",
"nodeType": "VariableDeclaration",
"scope": 2771,
"src": "782:19:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 2769,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "782:7:15",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"name": "element",
"nodeType": "StructDefinition",
"scope": 3760,
"src": "243:563:15",
"visibility": "public"
},
{
"canonicalName": "CommandList.commandMap",
"id": 2797,
"members": [
{
"constant": false,
"id": 2774,
"name": "list",
"nodeType": "VariableDeclaration",
"scope": 2797,
"src": "865:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 2772,
"name": "element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "865:7:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 2773,
"length": null,
"nodeType": "ArrayTypeName",
"src": "865:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2777,
"name": "waiting",
"nodeType": "VariableDeclaration",
"scope": 2797,
"src": "910:17:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 2775,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "910:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2776,
"length": null,
"nodeType": "ArrayTypeName",
"src": "910:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2780,
"name": "locking",
"nodeType": "VariableDeclaration",
"scope": 2797,
"src": "968:17:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 2778,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "968:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2779,
"length": null,
"nodeType": "ArrayTypeName",
"src": "968:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2783,
"name": "canceled",
"nodeType": "VariableDeclaration",
"scope": 2797,
"src": "1055:18:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 2781,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1055:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2782,
"length": null,
"nodeType": "ArrayTypeName",
"src": "1055:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2786,
"name": "completed",
"nodeType": "VariableDeclaration",
"scope": 2797,
"src": "1104:19:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 2784,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1104:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2785,
"length": null,
"nodeType": "ArrayTypeName",
"src": "1104:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2791,
"name": "submitterCmds",
"nodeType": "VariableDeclaration",
"scope": 2797,
"src": "1177:43:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[])"
},
"typeName": {
"id": 2790,
"keyType": {
"id": 2787,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1185:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Mapping",
"src": "1177:29:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[])"
},
"valueType": {
"baseType": {
"id": 2788,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1196:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2789,
"length": null,
"nodeType": "ArrayTypeName",
"src": "1196:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2796,
"name": "agentCmds",
"nodeType": "VariableDeclaration",
"scope": 2797,
"src": "1274:39:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[])"
},
"typeName": {
"id": 2795,
"keyType": {
"id": 2792,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1282:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Mapping",
"src": "1274:29:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[])"
},
"valueType": {
"baseType": {
"id": 2793,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1293:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2794,
"length": null,
"nodeType": "ArrayTypeName",
"src": "1293:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
}
},
"value": null,
"visibility": "internal"
}
],
"name": "commandMap",
"nodeType": "StructDefinition",
"scope": 3760,
"src": "810:508:15",
"visibility": "public"
},
{
"body": {
"id": 2826,
"nodeType": "Block",
"src": "1358:184:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"id": 2821,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"id": 2814,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2807,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 2802,
"name": "_verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2799,
"src": "1379:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2804,
"name": "Verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2756,
"src": "1397:5:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_enum$_Verbs_$2756_$",
"typeString": "type(enum CommandList.Verbs)"
}
},
"id": 2805,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"memberName": "TRANSFER",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "1397:14:15",
"typeDescriptions": {
"typeIdentifier": "t_enum$_Verbs_$2756",
"typeString": "enum CommandList.Verbs"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_enum$_Verbs_$2756",
"typeString": "enum CommandList.Verbs"
}
],
"id": 2803,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "1389:7:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_uint256_$",
"typeString": "type(uint256)"
},
"typeName": "uint256"
},
"id": 2806,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1389:23:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "1379:33:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "BinaryOperation",
"operator": "||",
"rightExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2813,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 2808,
"name": "_verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2799,
"src": "1424:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2810,
"name": "Verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2756,
"src": "1442:5:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_enum$_Verbs_$2756_$",
"typeString": "type(enum CommandList.Verbs)"
}
},
"id": 2811,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"memberName": "EXCHANGE",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "1442:14:15",
"typeDescriptions": {
"typeIdentifier": "t_enum$_Verbs_$2756",
"typeString": "enum CommandList.Verbs"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_enum$_Verbs_$2756",
"typeString": "enum CommandList.Verbs"
}
],
"id": 2809,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "1434:7:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_uint256_$",
"typeString": "type(uint256)"
},
"typeName": "uint256"
},
"id": 2812,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1434:23:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "1424:33:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"src": "1379:78:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "BinaryOperation",
"operator": "||",
"rightExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2820,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 2815,
"name": "_verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2799,
"src": "1469:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2817,
"name": "Verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2756,
"src": "1487:5:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_enum$_Verbs_$2756_$",
"typeString": "type(enum CommandList.Verbs)"
}
},
"id": 2818,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"memberName": "EXECUTE",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "1487:13:15",
"typeDescriptions": {
"typeIdentifier": "t_enum$_Verbs_$2756",
"typeString": "enum CommandList.Verbs"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_enum$_Verbs_$2756",
"typeString": "enum CommandList.Verbs"
}
],
"id": 2816,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "1479:7:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_uint256_$",
"typeString": "type(uint256)"
},
"typeName": "uint256"
},
"id": 2819,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1479:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "1469:32:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"src": "1379:122:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "696e76616c6964207665726273",
"id": 2822,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "1509:15:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_d10f2007c30c709fd945813d5aff5976e48b0726c1279fc7bce8a6cb3941915b",
"typeString": "literal_string \"invalid verbs\""
},
"value": "invalid verbs"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_d10f2007c30c709fd945813d5aff5976e48b0726c1279fc7bce8a6cb3941915b",
"typeString": "literal_string \"invalid verbs\""
}
],
"id": 2801,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "1364:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 2823,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1364:166:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 2824,
"nodeType": "ExpressionStatement",
"src": "1364:166:15"
},
{
"id": 2825,
"nodeType": "PlaceholderStatement",
"src": "1536:1:15"
}
]
},
"documentation": null,
"id": 2827,
"name": "validVerbs",
"nodeType": "ModifierDefinition",
"parameters": {
"id": 2800,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2799,
"name": "_verbs",
"nodeType": "VariableDeclaration",
"scope": 2827,
"src": "1342:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2798,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1342:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1341:16:15"
},
"src": "1322:220:15",
"visibility": "internal"
},
{
"body": {
"id": 2846,
"nodeType": "Block",
"src": "1643:70:15",
"statements": [
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2840,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 2836,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2831,
"src": "1653:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">=",
"rightExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2837,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2829,
"src": "1661:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 2838,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "1661:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 2839,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "1661:16:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "1653:24:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 2843,
"nodeType": "IfStatement",
"src": "1649:42:15",
"trueBody": {
"expression": {
"argumentTypes": null,
"hexValue": "66616c7365",
"id": 2841,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "1686:5:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "false"
},
"functionReturnParameters": 2835,
"id": 2842,
"nodeType": "Return",
"src": "1679:12:15"
}
},
{
"expression": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 2844,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "1704:4:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"functionReturnParameters": 2835,
"id": 2845,
"nodeType": "Return",
"src": "1697:11:15"
}
]
},
"documentation": null,
"id": 2847,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "exist",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 2832,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2829,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 2847,
"src": "1561:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 2828,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "1561:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2831,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 2847,
"src": "1586:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2830,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1586:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1560:39:15"
},
"payable": false,
"returnParameters": {
"id": 2835,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2834,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 2847,
"src": "1635:4:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 2833,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "1635:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1634:6:15"
},
"scope": 3760,
"src": "1546:167:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 2914,
"nodeType": "Block",
"src": "1971:379:15",
"statements": [
{
"assignments": [
2868
],
"declarations": [
{
"constant": false,
"id": 2868,
"name": "e",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1977:16:15",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_memory_ptr",
"typeString": "struct CommandList.element"
},
"typeName": {
"contractScope": null,
"id": 2867,
"name": "element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "1977:7:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 2880,
"initialValue": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 2870,
"name": "_submitter",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2851,
"src": "2023:10:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "30",
"id": 2872,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2056:1:15",
"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": 2871,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "2048:7:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_address_$",
"typeString": "type(address)"
},
"typeName": "address"
},
"id": 2873,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2048:10:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 2874,
"name": "_fromChain",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2853,
"src": "2077:10:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 2875,
"name": "_toChain",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2855,
"src": "2104:8:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 2876,
"name": "_verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2857,
"src": "2127:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"hexValue": "31",
"id": 2877,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2149:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
},
{
"argumentTypes": null,
"id": 2878,
"name": "_payloadHash",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2859,
"src": "2171:12:15",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
}
],
"expression": {
"argumentTypes": null,
"id": 2869,
"name": "element",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2771,
"src": "1996:7:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_struct$_element_$2771_storage_ptr_$",
"typeString": "type(struct CommandList.element storage pointer)"
}
},
"id": 2879,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "structConstructorCall",
"lValueRequested": false,
"names": [
"submitter",
"agent",
"fromChain",
"toChain",
"verbs",
"status",
"payloadHash"
],
"nodeType": "FunctionCall",
"src": "1996:194:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_memory",
"typeString": "struct CommandList.element memory"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "1977:213:15"
},
{
"assignments": [
2882
],
"declarations": [
{
"constant": false,
"id": 2882,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "2197:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2881,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2197:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 2886,
"initialValue": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2883,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2849,
"src": "2212:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 2884,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "2212:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 2885,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "2212:16:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "2197:31:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 2892,
"name": "e",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2868,
"src": "2249:1:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_memory_ptr",
"typeString": "struct CommandList.element memory"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_element_$2771_memory_ptr",
"typeString": "struct CommandList.element memory"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2887,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2849,
"src": "2234:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 2890,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "2234:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 2891,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "2234:14:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_struct$_element_$2771_storage_$returns$_t_uint256_$",
"typeString": "function (struct CommandList.element storage ref) returns (uint256)"
}
},
"id": 2893,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2234:17:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2894,
"nodeType": "ExpressionStatement",
"src": "2234:17:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 2900,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2882,
"src": "2275:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2895,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2849,
"src": "2257:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 2898,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "2257:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 2899,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "2257:17:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) returns (uint256)"
}
},
"id": 2901,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2257:23:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2902,
"nodeType": "ExpressionStatement",
"src": "2257:23:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 2909,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2882,
"src": "2322:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2903,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2849,
"src": "2286:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 2906,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "submitterCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2791,
"src": "2286:18:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 2907,
"indexExpression": {
"argumentTypes": null,
"id": 2905,
"name": "_submitter",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2851,
"src": "2305:10:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "2286:30:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 2908,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "2286:35:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) returns (uint256)"
}
},
"id": 2910,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2286:41:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2911,
"nodeType": "ExpressionStatement",
"src": "2286:41:15"
},
{
"expression": {
"argumentTypes": null,
"id": 2912,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2882,
"src": "2341:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 2866,
"id": 2913,
"nodeType": "Return",
"src": "2334:11:15"
}
]
},
"documentation": null,
"id": 2915,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [
{
"argumentTypes": null,
"id": 2862,
"name": "_verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2857,
"src": "1945:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 2863,
"modifierName": {
"argumentTypes": null,
"id": 2861,
"name": "validVerbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2827,
"src": "1934:10:15",
"typeDescriptions": {
"typeIdentifier": "t_modifier$_t_uint256_$",
"typeString": "modifier (uint256)"
}
},
"nodeType": "ModifierInvocation",
"src": "1934:18:15"
}
],
"name": "insert",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 2860,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2849,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1781:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 2848,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "1781:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2851,
"name": "_submitter",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1810:18:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 2850,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1810:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2853,
"name": "_fromChain",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1834:18:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2852,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1834:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2855,
"name": "_toChain",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1858:16:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2854,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1858:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2857,
"name": "_verbs",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1880:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2856,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1880:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2859,
"name": "_payloadHash",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1900:20:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 2858,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "1900:7:15",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1775:149:15"
},
"payable": false,
"returnParameters": {
"id": 2866,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2865,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1962:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2864,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1962:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1961:9:15"
},
"scope": 3760,
"src": "1760:590:15",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 2976,
"nodeType": "Block",
"src": "2452:239:15",
"statements": [
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2930,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2927,
"name": "_arr",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2918,
"src": "2462:4:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[] memory"
}
},
"id": 2928,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "2462:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"hexValue": "30",
"id": 2929,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2477:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"src": "2462:16:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 2936,
"nodeType": "IfStatement",
"src": "2458:54:15",
"trueBody": {
"id": 2935,
"nodeType": "Block",
"src": "2480:32:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"hexValue": "66616c7365",
"id": 2931,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2496:5:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "false"
},
{
"argumentTypes": null,
"hexValue": "30",
"id": 2932,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2503:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
}
],
"id": 2933,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "2495:10:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$",
"typeString": "tuple(bool,int_const 0)"
}
},
"functionReturnParameters": 2926,
"id": 2934,
"nodeType": "Return",
"src": "2488:17:15"
}
]
}
},
{
"body": {
"id": 2961,
"nodeType": "Block",
"src": "2563:70:15",
"statements": [
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2954,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 2950,
"name": "_arr",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2918,
"src": "2575:4:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[] memory"
}
},
"id": 2952,
"indexExpression": {
"argumentTypes": null,
"id": 2951,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2938,
"src": "2580:1:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "2575:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"id": 2953,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2920,
"src": "2586:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "2575:15:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 2960,
"nodeType": "IfStatement",
"src": "2571:56:15",
"trueBody": {
"id": 2959,
"nodeType": "Block",
"src": "2592:35:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"hexValue": "74727565",
"id": 2955,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2610:4:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
{
"argumentTypes": null,
"id": 2956,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2938,
"src": "2616:1:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 2957,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "2609:9:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"functionReturnParameters": 2926,
"id": 2958,
"nodeType": "Return",
"src": "2602:16:15"
}
]
}
}
]
},
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2946,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 2944,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2938,
"src": "2551:1:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">",
"rightExpression": {
"argumentTypes": null,
"hexValue": "30",
"id": 2945,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2555:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"src": "2551:5:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 2962,
"initializationExpression": {
"assignments": [
2938
],
"declarations": [
{
"constant": false,
"id": 2938,
"name": "i",
"nodeType": "VariableDeclaration",
"scope": 2977,
"src": "2522:9:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2937,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2522:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 2943,
"initialValue": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2942,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2939,
"name": "_arr",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2918,
"src": "2534:4:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[] memory"
}
},
"id": 2940,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "2534:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "-",
"rightExpression": {
"argumentTypes": null,
"hexValue": "31",
"id": 2941,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2548:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
},
"src": "2534:15:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "2522:27:15"
},
"loopExpression": {
"expression": {
"argumentTypes": null,
"id": 2948,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "UnaryOperation",
"operator": "--",
"prefix": false,
"src": "2558:3:15",
"subExpression": {
"argumentTypes": null,
"id": 2947,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2938,
"src": "2558:1:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2949,
"nodeType": "ExpressionStatement",
"src": "2558:3:15"
},
"nodeType": "ForStatement",
"src": "2517:116:15"
},
{
"expression": {
"argumentTypes": null,
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2967,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 2963,
"name": "_arr",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2918,
"src": "2646:4:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[] memory"
}
},
"id": 2965,
"indexExpression": {
"argumentTypes": null,
"hexValue": "30",
"id": 2964,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2651:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "2646:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"id": 2966,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2920,
"src": "2657:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "2646:15:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseExpression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"hexValue": "66616c7365",
"id": 2971,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2677:5:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "false"
},
{
"argumentTypes": null,
"hexValue": "30",
"id": 2972,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2684:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
}
],
"id": 2973,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "2676:10:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$",
"typeString": "tuple(bool,int_const 0)"
}
},
"id": 2974,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "Conditional",
"src": "2646:40:15",
"trueExpression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"hexValue": "74727565",
"id": 2968,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2665:4:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
{
"argumentTypes": null,
"hexValue": "30",
"id": 2969,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2671:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
}
],
"id": 2970,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "2664:9:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$",
"typeString": "tuple(bool,int_const 0)"
}
},
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint8_$",
"typeString": "tuple(bool,uint8)"
}
},
"functionReturnParameters": 2926,
"id": 2975,
"nodeType": "Return",
"src": "2639:47:15"
}
]
},
"documentation": null,
"id": 2977,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getIdx",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 2921,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2918,
"name": "_arr",
"nodeType": "VariableDeclaration",
"scope": 2977,
"src": "2370:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 2916,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2370:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2917,
"length": null,
"nodeType": "ArrayTypeName",
"src": "2370:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2920,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 2977,
"src": "2386:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2919,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2386:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2369:30:15"
},
"payable": false,
"returnParameters": {
"id": 2926,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2923,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 2977,
"src": "2435:4:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 2922,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "2435:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2925,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 2977,
"src": "2441:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2924,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2441:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2434:15:15"
},
"scope": 3760,
"src": "2354:337:15",
"stateMutability": "pure",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3083,
"nodeType": "Block",
"src": "2798:623:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 2990,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "2818:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"id": 2991,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2983,
"src": "2824:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 2989,
"name": "exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2847,
"src": "2812:5:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_uint256_$returns$_t_bool_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256) view returns (bool)"
}
},
"id": 2992,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2812:17:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "6c6f636b20636f6d6d616e6420646f6573206e6f74206578697374",
"id": 2993,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2831:29:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_e2b5185cc4be90cba22e7103b0d693bf7820d08408953d2d4d0897eefe2cb888",
"typeString": "literal_string \"lock command does not exist\""
},
"value": "lock command does not exist"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_e2b5185cc4be90cba22e7103b0d693bf7820d08408953d2d4d0897eefe2cb888",
"typeString": "literal_string \"lock command does not exist\""
}
],
"id": 2988,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "2804:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 2994,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2804:57:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 2995,
"nodeType": "ExpressionStatement",
"src": "2804:57:15"
},
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 2997,
"name": "_waitingIdx",
"nodeType": "VariableDeclaration",
"scope": 3084,
"src": "2896:19:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2996,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2896:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 2998,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "2896:19:15"
},
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 3000,
"name": "_exist",
"nodeType": "VariableDeclaration",
"scope": 3084,
"src": "2921:11:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 2999,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "2921:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3001,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "2921:11:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3010,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"id": 3002,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3000,
"src": "2939:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"id": 3003,
"name": "_waitingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2997,
"src": "2947:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 3004,
"isConstant": false,
"isInlineArray": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "TupleExpression",
"src": "2938:21:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3006,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "2969:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3007,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "2969:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3008,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2983,
"src": "2983:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3005,
"name": "getIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2977,
"src": "2962:6:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$returns$_t_bool_$_t_uint256_$",
"typeString": "function (uint256[] memory,uint256) pure returns (bool,uint256)"
}
},
"id": 3009,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2962:26:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"src": "2938:50:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3011,
"nodeType": "ExpressionStatement",
"src": "2938:50:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3013,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3000,
"src": "3002:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "69647820646f6573206e6f7420657869737420696e2077616974696e67206c697374",
"id": 3014,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3010:36:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_189d1ca4d34a222d8daf8e1411d2e06ecb95010e1578187967a27f508e5ed9d2",
"typeString": "literal_string \"idx does not exist in waiting list\""
},
"value": "idx does not exist in waiting list"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_189d1ca4d34a222d8daf8e1411d2e06ecb95010e1578187967a27f508e5ed9d2",
"typeString": "literal_string \"idx does not exist in waiting list\""
}
],
"id": 3012,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "2994:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3015,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2994:53:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3016,
"nodeType": "ExpressionStatement",
"src": "2994:53:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3031,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3017,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3085:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3020,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3085:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3021,
"indexExpression": {
"argumentTypes": null,
"id": 3019,
"name": "_waitingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2997,
"src": "3098:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "3085:25:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3022,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3113:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3023,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3113:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3030,
"indexExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3028,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3150:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3024,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3126:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3025,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3126:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3026,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3126:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3027,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "3126:23:15",
"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": 3029,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3126:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3113:40:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "3085:68:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3032,
"nodeType": "ExpressionStatement",
"src": "3085:68:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3044,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3033,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3159:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3036,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3159:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3037,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3159:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3042,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3205:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3038,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3181:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3039,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3181:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3040,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3181:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3041,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "3181:23:15",
"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": 3043,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3181:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "3159:48:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3045,
"nodeType": "ExpressionStatement",
"src": "3159:48:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3051,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2983,
"src": "3255:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3046,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3237:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3049,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "3237:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3050,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3237:17:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) returns (uint256)"
}
},
"id": 3052,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3237:23:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3053,
"nodeType": "ExpressionStatement",
"src": "3237:23:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3061,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3054,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3297:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3057,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "3297:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3058,
"indexExpression": {
"argumentTypes": null,
"id": 3056,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2983,
"src": "3307:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3297:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3059,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "agent",
"nodeType": "MemberAccess",
"referencedDeclaration": 2760,
"src": "3297:21:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 3060,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2981,
"src": "3321:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"src": "3297:30:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"id": 3062,
"nodeType": "ExpressionStatement",
"src": "3297:30:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3070,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3063,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3333:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3066,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "3333:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3067,
"indexExpression": {
"argumentTypes": null,
"id": 3065,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2983,
"src": "3343:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3333:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3068,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "3333:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "32",
"id": 3069,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3358:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_2_by_1",
"typeString": "int_const 2"
},
"value": "2"
},
"src": "3333:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3071,
"nodeType": "ExpressionStatement",
"src": "3333:26:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3078,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2983,
"src": "3393:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3072,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3365:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3075,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "agentCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2796,
"src": "3365:14:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 3076,
"indexExpression": {
"argumentTypes": null,
"id": 3074,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2981,
"src": "3380:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3365:22:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3077,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3365:27:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) returns (uint256)"
}
},
"id": 3079,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3365:33:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3080,
"nodeType": "ExpressionStatement",
"src": "3365:33:15"
},
{
"expression": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 3081,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3412:4:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"functionReturnParameters": 2987,
"id": 3082,
"nodeType": "Return",
"src": "3405:11:15"
}
]
},
"documentation": null,
"id": 3084,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "lock",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 2984,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2979,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3084,
"src": "2709:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 2978,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "2709:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2981,
"name": "_agent",
"nodeType": "VariableDeclaration",
"scope": 3084,
"src": "2734:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 2980,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2734:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2983,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 3084,
"src": "2750:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2982,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2750:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2708:55:15"
},
"payable": false,
"returnParameters": {
"id": 2987,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2986,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3084,
"src": "2790:4:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 2985,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "2790:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2789:6:15"
},
"scope": 3760,
"src": "2695:726:15",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3162,
"nodeType": "Block",
"src": "3525:460:15",
"statements": [
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 3094,
"name": "_waitingIdx",
"nodeType": "VariableDeclaration",
"scope": 3163,
"src": "3559:19:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3093,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "3559:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3095,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "3559:19:15"
},
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 3097,
"name": "_exist",
"nodeType": "VariableDeclaration",
"scope": 3163,
"src": "3584:11:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 3096,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "3584:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3098,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "3584:11:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3107,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"id": 3099,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3097,
"src": "3602:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"id": 3100,
"name": "_waitingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3094,
"src": "3610:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 3101,
"isConstant": false,
"isInlineArray": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "TupleExpression",
"src": "3601:21:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3103,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3632:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3104,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3632:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3105,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3088,
"src": "3646:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3102,
"name": "getIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2977,
"src": "3625:6:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$returns$_t_bool_$_t_uint256_$",
"typeString": "function (uint256[] memory,uint256) pure returns (bool,uint256)"
}
},
"id": 3106,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3625:26:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"src": "3601:50:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3108,
"nodeType": "ExpressionStatement",
"src": "3601:50:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3110,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3097,
"src": "3665:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "69647820646f6573206e6f7420657869737420696e2077616974696e67206c697374",
"id": 3111,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3673:36:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_189d1ca4d34a222d8daf8e1411d2e06ecb95010e1578187967a27f508e5ed9d2",
"typeString": "literal_string \"idx does not exist in waiting list\""
},
"value": "idx does not exist in waiting list"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_189d1ca4d34a222d8daf8e1411d2e06ecb95010e1578187967a27f508e5ed9d2",
"typeString": "literal_string \"idx does not exist in waiting list\""
}
],
"id": 3109,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "3657:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3112,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3657:53:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3113,
"nodeType": "ExpressionStatement",
"src": "3657:53:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3128,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3114,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3750:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3117,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3750:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3118,
"indexExpression": {
"argumentTypes": null,
"id": 3116,
"name": "_waitingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3094,
"src": "3763:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "3750:25:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3119,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3778:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3120,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3778:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3127,
"indexExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3125,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3815:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3121,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3791:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3122,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3791:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3123,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3791:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3124,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "3791:23:15",
"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": 3126,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3791:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3778:40:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "3750:68:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3129,
"nodeType": "ExpressionStatement",
"src": "3750:68:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3141,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3130,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3824:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3133,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3824:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3134,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3824:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3139,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3870:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3135,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3846:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3136,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3846:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3137,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3846:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3138,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "3846:23:15",
"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": 3140,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3846:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "3824:48:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3142,
"nodeType": "ExpressionStatement",
"src": "3824:48:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3148,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3088,
"src": "3925:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3143,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3906:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3146,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "canceled",
"nodeType": "MemberAccess",
"referencedDeclaration": 2783,
"src": "3906:13:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3147,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3906:18:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) returns (uint256)"
}
},
"id": 3149,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3906:24:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3150,
"nodeType": "ExpressionStatement",
"src": "3906:24:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3158,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3151,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3936:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3154,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "3936:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3155,
"indexExpression": {
"argumentTypes": null,
"id": 3153,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3088,
"src": "3946:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3936:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3156,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "3936:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "34",
"id": 3157,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3961:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_4_by_1",
"typeString": "int_const 4"
},
"value": "4"
},
"src": "3936:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3159,
"nodeType": "ExpressionStatement",
"src": "3936:26:15"
},
{
"expression": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 3160,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3976:4:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"functionReturnParameters": 3092,
"id": 3161,
"nodeType": "Return",
"src": "3969:11:15"
}
]
},
"documentation": null,
"id": 3163,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "cancelFromWaiting",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3089,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3086,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3163,
"src": "3452:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3085,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "3452:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3088,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 3163,
"src": "3477:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3087,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "3477:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "3451:39:15"
},
"payable": false,
"returnParameters": {
"id": 3092,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3091,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3163,
"src": "3517:4:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 3090,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "3517:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "3516:6:15"
},
"scope": 3760,
"src": "3425:560:15",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3306,
"nodeType": "Block",
"src": "4094:1025:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3176,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4114:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"id": 3177,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4120:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3175,
"name": "exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2847,
"src": "4108:5:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_uint256_$returns$_t_bool_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256) view returns (bool)"
}
},
"id": 3178,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4108:17:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "6c6f636b20636f6d6d616e6420646f6573206e6f74206578697374",
"id": 3179,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4127:29:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_e2b5185cc4be90cba22e7103b0d693bf7820d08408953d2d4d0897eefe2cb888",
"typeString": "literal_string \"lock command does not exist\""
},
"value": "lock command does not exist"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_e2b5185cc4be90cba22e7103b0d693bf7820d08408953d2d4d0897eefe2cb888",
"typeString": "literal_string \"lock command does not exist\""
}
],
"id": 3174,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "4100:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3180,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4100:57:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3181,
"nodeType": "ExpressionStatement",
"src": "4100:57:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"id": 3197,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3189,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3183,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4178:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3184,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "4178:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3186,
"indexExpression": {
"argumentTypes": null,
"id": 3185,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4188:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "4178:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3187,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "4178:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "!=",
"rightExpression": {
"argumentTypes": null,
"hexValue": "34",
"id": 3188,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4204:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_4_by_1",
"typeString": "int_const 4"
},
"value": "4"
},
"src": "4178:27:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "BinaryOperation",
"operator": "&&",
"rightExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3196,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3190,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4209:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3191,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "4209:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3193,
"indexExpression": {
"argumentTypes": null,
"id": 3192,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4219:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "4209:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3194,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "4209:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "!=",
"rightExpression": {
"argumentTypes": null,
"hexValue": "35",
"id": 3195,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4235:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_5_by_1",
"typeString": "int_const 5"
},
"value": "5"
},
"src": "4209:27:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"src": "4178:58:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "6c6f636b20636f6d6d616e64207374617475732063616e206e6f742062652063616e63656c6564206f7220646f6e65",
"id": 3198,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4244:49:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_365fa5f5d92ae96348066ced42f20135202acd5efc338eac65c5e8100b9e62eb",
"typeString": "literal_string \"lock command status can not be canceled or done\""
},
"value": "lock command status can not be canceled or done"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_365fa5f5d92ae96348066ced42f20135202acd5efc338eac65c5e8100b9e62eb",
"typeString": "literal_string \"lock command status can not be canceled or done\""
}
],
"id": 3182,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "4163:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3199,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4163:136:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3200,
"nodeType": "ExpressionStatement",
"src": "4163:136:15"
},
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3207,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3201,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4333:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3202,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "4333:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3204,
"indexExpression": {
"argumentTypes": null,
"id": 3203,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4343:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "4333:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3205,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "4333:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"hexValue": "31",
"id": 3206,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4359:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
},
"src": "4333:27:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 3225,
"nodeType": "IfStatement",
"src": "4329:234:15",
"trueBody": {
"id": 3224,
"nodeType": "Block",
"src": "4362:201:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"id": 3215,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 3209,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3167,
"src": "4425:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3210,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4435:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3211,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "4435:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3213,
"indexExpression": {
"argumentTypes": null,
"id": 3212,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4445:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "4435:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3214,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "submitter",
"nodeType": "MemberAccess",
"referencedDeclaration": 2758,
"src": "4435:25:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"src": "4425:35:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "75736572206f6e6c792063616e63656c2068696d206f776e20636f6d6d616e64",
"id": 3216,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4470:34:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_cf2cae9839861fcada48b6891f1cabe06564a281bc77dd5e52485577fb99f51d",
"typeString": "literal_string \"user only cancel him own command\""
},
"value": "user only cancel him own command"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_cf2cae9839861fcada48b6891f1cabe06564a281bc77dd5e52485577fb99f51d",
"typeString": "literal_string \"user only cancel him own command\""
}
],
"id": 3208,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "4408:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3217,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4408:104:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3218,
"nodeType": "ExpressionStatement",
"src": "4408:104:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3220,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4545:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"id": 3221,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4551:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3219,
"name": "cancelFromWaiting",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3163,
"src": "4527:17:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_commandMap_$2797_storage_ptr_$_t_uint256_$returns$_t_bool_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256) returns (bool)"
}
},
"id": 3222,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4527:29:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"functionReturnParameters": 3173,
"id": 3223,
"nodeType": "Return",
"src": "4520:36:15"
}
]
}
},
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 3227,
"name": "_lockingIdx",
"nodeType": "VariableDeclaration",
"scope": 3307,
"src": "4617:19:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3226,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "4617:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3228,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "4617:19:15"
},
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 3230,
"name": "_exist",
"nodeType": "VariableDeclaration",
"scope": 3307,
"src": "4642:11:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 3229,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "4642:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3231,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "4642:11:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3240,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"id": 3232,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3230,
"src": "4660:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"id": 3233,
"name": "_lockingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3227,
"src": "4668:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 3234,
"isConstant": false,
"isInlineArray": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "TupleExpression",
"src": "4659:21:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3236,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4690:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3237,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "4690:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3238,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4704:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3235,
"name": "getIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2977,
"src": "4683:6:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$returns$_t_bool_$_t_uint256_$",
"typeString": "function (uint256[] memory,uint256) pure returns (bool,uint256)"
}
},
"id": 3239,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4683:26:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"src": "4659:50:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3241,
"nodeType": "ExpressionStatement",
"src": "4659:50:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3243,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3230,
"src": "4723:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "69647820646f6573206e6f7420657869737420696e206c6f636b696e67206c697374",
"id": 3244,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4731:36:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_2ed2f78f5853a35f51137d43eaa7b2e053d988ef84429dc2cb2a5e0c62570897",
"typeString": "literal_string \"idx does not exist in locking list\""
},
"value": "idx does not exist in locking list"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_2ed2f78f5853a35f51137d43eaa7b2e053d988ef84429dc2cb2a5e0c62570897",
"typeString": "literal_string \"idx does not exist in locking list\""
}
],
"id": 3242,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "4715:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3245,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4715:53:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3246,
"nodeType": "ExpressionStatement",
"src": "4715:53:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"id": 3254,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 3248,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3167,
"src": "4782:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3249,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4792:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3250,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "4792:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3252,
"indexExpression": {
"argumentTypes": null,
"id": 3251,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4802:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "4792:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3253,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "agent",
"nodeType": "MemberAccess",
"referencedDeclaration": 2760,
"src": "4792:21:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"src": "4782:31:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "6167656e742063616e63656c20636f6d6d616e642068696d73656c66",
"id": 3255,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4815:30:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_3d3631402915e918d2e4eb091f9fcaa5a85f6d2223b9450d216a70455e217c9e",
"typeString": "literal_string \"agent cancel command himself\""
},
"value": "agent cancel command himself"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_3d3631402915e918d2e4eb091f9fcaa5a85f6d2223b9450d216a70455e217c9e",
"typeString": "literal_string \"agent cancel command himself\""
}
],
"id": 3247,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "4774:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3256,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4774:72:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3257,
"nodeType": "ExpressionStatement",
"src": "4774:72:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3272,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3258,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4884:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3261,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "4884:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3262,
"indexExpression": {
"argumentTypes": null,
"id": 3260,
"name": "_lockingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3227,
"src": "4897:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "4884:25:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3263,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4912:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3264,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "4912:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3271,
"indexExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3269,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4949:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3265,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4925:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3266,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "4925:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3267,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "4925:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3268,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "4925:23:15",
"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": 3270,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4925:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "4912:40:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "4884:68:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3273,
"nodeType": "ExpressionStatement",
"src": "4884:68:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3285,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3274,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4958:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3277,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "4958:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3278,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "4958:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3283,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5004:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3279,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4980:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3280,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "4980:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3281,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "4980:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3282,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "4980:23:15",
"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": 3284,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4980:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "4958:48:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3286,
"nodeType": "ExpressionStatement",
"src": "4958:48:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3292,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "5059:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3287,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "5040:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3290,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "canceled",
"nodeType": "MemberAccess",
"referencedDeclaration": 2783,
"src": "5040:13:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3291,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "5040:18:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) returns (uint256)"
}
},
"id": 3293,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5040:24:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3294,
"nodeType": "ExpressionStatement",
"src": "5040:24:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3302,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3295,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "5070:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3298,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "5070:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3299,
"indexExpression": {
"argumentTypes": null,
"id": 3297,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "5080:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5070:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3300,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "5070:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "34",
"id": 3301,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5095:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_4_by_1",
"typeString": "int_const 4"
},
"value": "4"
},
"src": "5070:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3303,
"nodeType": "ExpressionStatement",
"src": "5070:26:15"
},
{
"expression": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 3304,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5110:4:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"functionReturnParameters": 3173,
"id": 3305,
"nodeType": "Return",
"src": "5103:11:15"
}
]
},
"documentation": null,
"id": 3307,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "cancel",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3170,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3165,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3307,
"src": "4005:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3164,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "4005:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3167,
"name": "_agent",
"nodeType": "VariableDeclaration",
"scope": 3307,
"src": "4030:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3166,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "4030:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3169,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 3307,
"src": "4046:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3168,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "4046:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "4004:55:15"
},
"payable": false,
"returnParameters": {
"id": 3173,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3172,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3307,
"src": "4086:4:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 3171,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "4086:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "4085:6:15"
},
"scope": 3760,
"src": "3989:1130:15",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3417,
"nodeType": "Block",
"src": "5230:740:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3320,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5250:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"id": 3321,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3313,
"src": "5256:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3319,
"name": "exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2847,
"src": "5244:5:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_uint256_$returns$_t_bool_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256) view returns (bool)"
}
},
"id": 3322,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5244:17:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "6c6f636b20636f6d6d616e6420646f6573206e6f74206578697374",
"id": 3323,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5263:29:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_e2b5185cc4be90cba22e7103b0d693bf7820d08408953d2d4d0897eefe2cb888",
"typeString": "literal_string \"lock command does not exist\""
},
"value": "lock command does not exist"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_e2b5185cc4be90cba22e7103b0d693bf7820d08408953d2d4d0897eefe2cb888",
"typeString": "literal_string \"lock command does not exist\""
}
],
"id": 3318,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "5236:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3324,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5236:57:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3325,
"nodeType": "ExpressionStatement",
"src": "5236:57:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3333,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3327,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5352:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3328,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "5352:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3330,
"indexExpression": {
"argumentTypes": null,
"id": 3329,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3313,
"src": "5362:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5352:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3331,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "5352:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"hexValue": "32",
"id": 3332,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5378:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_2_by_1",
"typeString": "int_const 2"
},
"value": "2"
},
"src": "5352:27:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "6c6f636b20636f6d6d616e64207374617475732063616e20626520636f6d706c65746564",
"id": 3334,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5387:38:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_0a6a93f63cec5d28fd2dd42d24974cba44975407d393d5cb05d4828ee19d73c7",
"typeString": "literal_string \"lock command status can be completed\""
},
"value": "lock command status can be completed"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_0a6a93f63cec5d28fd2dd42d24974cba44975407d393d5cb05d4828ee19d73c7",
"typeString": "literal_string \"lock command status can be completed\""
}
],
"id": 3326,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "5337:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3335,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5337:94:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3336,
"nodeType": "ExpressionStatement",
"src": "5337:94:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"id": 3344,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 3338,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3311,
"src": "5445:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3339,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5455:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3340,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "5455:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3342,
"indexExpression": {
"argumentTypes": null,
"id": 3341,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3313,
"src": "5465:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5455:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3343,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "agent",
"nodeType": "MemberAccess",
"referencedDeclaration": 2760,
"src": "5455:21:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"src": "5445:31:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "6167656e742063616e63656c20636f6d6d616e642068696d73656c66",
"id": 3345,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5478:30:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_3d3631402915e918d2e4eb091f9fcaa5a85f6d2223b9450d216a70455e217c9e",
"typeString": "literal_string \"agent cancel command himself\""
},
"value": "agent cancel command himself"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_3d3631402915e918d2e4eb091f9fcaa5a85f6d2223b9450d216a70455e217c9e",
"typeString": "literal_string \"agent cancel command himself\""
}
],
"id": 3337,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "5437:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3346,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5437:72:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3347,
"nodeType": "ExpressionStatement",
"src": "5437:72:15"
},
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 3349,
"name": "_lockingIdx",
"nodeType": "VariableDeclaration",
"scope": 3418,
"src": "5544:19:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3348,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "5544:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3350,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "5544:19:15"
},
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 3352,
"name": "_exist",
"nodeType": "VariableDeclaration",
"scope": 3418,
"src": "5569:11:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 3351,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "5569:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3353,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "5569:11:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3362,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"id": 3354,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3352,
"src": "5587:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"id": 3355,
"name": "_lockingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3349,
"src": "5595:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 3356,
"isConstant": false,
"isInlineArray": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "TupleExpression",
"src": "5586:21:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3358,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5617:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3359,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "5617:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3360,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3313,
"src": "5631:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3357,
"name": "getIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2977,
"src": "5610:6:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$returns$_t_bool_$_t_uint256_$",
"typeString": "function (uint256[] memory,uint256) pure returns (bool,uint256)"
}
},
"id": 3361,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5610:26:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"src": "5586:50:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3363,
"nodeType": "ExpressionStatement",
"src": "5586:50:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3365,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3352,
"src": "5650:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "69647820646f6573206e6f7420657869737420696e206c6f636b696e67206c697374",
"id": 3366,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5658:36:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_2ed2f78f5853a35f51137d43eaa7b2e053d988ef84429dc2cb2a5e0c62570897",
"typeString": "literal_string \"idx does not exist in locking list\""
},
"value": "idx does not exist in locking list"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_2ed2f78f5853a35f51137d43eaa7b2e053d988ef84429dc2cb2a5e0c62570897",
"typeString": "literal_string \"idx does not exist in locking list\""
}
],
"id": 3364,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "5642:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3367,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5642:53:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3368,
"nodeType": "ExpressionStatement",
"src": "5642:53:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3383,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3369,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5733:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3372,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "5733:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3373,
"indexExpression": {
"argumentTypes": null,
"id": 3371,
"name": "_lockingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3349,
"src": "5746:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "5733:25:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3374,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5761:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3375,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "5761:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3382,
"indexExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3380,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5798:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3376,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5774:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3377,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "5774:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3378,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "5774:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3379,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "5774:23:15",
"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": 3381,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5774:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5761:40:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "5733:68:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3384,
"nodeType": "ExpressionStatement",
"src": "5733:68:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3396,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3385,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5807:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3388,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "5807:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3389,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "5807:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3394,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5853:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3390,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5829:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3391,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "5829:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3392,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "5829:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3393,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "5829:23:15",
"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": 3395,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5829:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "5807:48:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3397,
"nodeType": "ExpressionStatement",
"src": "5807:48:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3403,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3313,
"src": "5910:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3398,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5890:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3401,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "completed",
"nodeType": "MemberAccess",
"referencedDeclaration": 2786,
"src": "5890:14:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3402,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "5890:19:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) returns (uint256)"
}
},
"id": 3404,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5890:25:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3405,
"nodeType": "ExpressionStatement",
"src": "5890:25:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3413,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3406,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5921:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3409,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "5921:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3410,
"indexExpression": {
"argumentTypes": null,
"id": 3408,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3313,
"src": "5931:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5921:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3411,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "5921:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "35",
"id": 3412,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5946:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_5_by_1",
"typeString": "int_const 5"
},
"value": "5"
},
"src": "5921:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3414,
"nodeType": "ExpressionStatement",
"src": "5921:26:15"
},
{
"expression": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 3415,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5961:4:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"functionReturnParameters": 3317,
"id": 3416,
"nodeType": "Return",
"src": "5954:11:15"
}
]
},
"documentation": null,
"id": 3418,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "complete",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3314,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3309,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3418,
"src": "5141:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3308,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "5141:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3311,
"name": "_agent",
"nodeType": "VariableDeclaration",
"scope": 3418,
"src": "5166:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3310,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "5166:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3313,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 3418,
"src": "5182:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3312,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "5182:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "5140:55:15"
},
"payable": false,
"returnParameters": {
"id": 3317,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3316,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3418,
"src": "5222:4:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 3315,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "5222:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "5221:6:15"
},
"scope": 3760,
"src": "5123:847:15",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3429,
"nodeType": "Block",
"src": "6046:34:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3425,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3420,
"src": "6059:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3426,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "6059:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3427,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6059:16:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 3424,
"id": 3428,
"nodeType": "Return",
"src": "6052:23:15"
}
]
},
"documentation": null,
"id": 3430,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "count",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3421,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3420,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3430,
"src": "5989:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3419,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "5989:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "5988:25:15"
},
"payable": false,
"returnParameters": {
"id": 3424,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3423,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3430,
"src": "6037:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3422,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "6037:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6036:9:15"
},
"scope": 3760,
"src": "5974:106:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3441,
"nodeType": "Block",
"src": "6177:37:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3437,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3432,
"src": "6190:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3438,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "6190:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3439,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6190:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 3436,
"id": 3440,
"nodeType": "Return",
"src": "6183:26:15"
}
]
},
"documentation": null,
"id": 3442,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "countWaiting",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3433,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3432,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3442,
"src": "6106:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3431,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "6106:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6105:25:15"
},
"payable": false,
"returnParameters": {
"id": 3436,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3435,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3442,
"src": "6166:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3434,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "6166:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6165:9:15"
},
"scope": 3760,
"src": "6084:130:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3453,
"nodeType": "Block",
"src": "6311:37:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3449,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3444,
"src": "6324:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3450,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "6324:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3451,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6324:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 3448,
"id": 3452,
"nodeType": "Return",
"src": "6317:26:15"
}
]
},
"documentation": null,
"id": 3454,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "countLocking",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3445,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3444,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3454,
"src": "6240:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3443,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "6240:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6239:25:15"
},
"payable": false,
"returnParameters": {
"id": 3448,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3447,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3454,
"src": "6300:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3446,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "6300:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6299:9:15"
},
"scope": 3760,
"src": "6218:130:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3465,
"nodeType": "Block",
"src": "6446:38:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3461,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3456,
"src": "6459:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3462,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "canceled",
"nodeType": "MemberAccess",
"referencedDeclaration": 2783,
"src": "6459:13:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3463,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6459:20:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 3460,
"id": 3464,
"nodeType": "Return",
"src": "6452:27:15"
}
]
},
"documentation": null,
"id": 3466,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "countCanceled",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3457,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3456,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3466,
"src": "6375:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3455,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "6375:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6374:25:15"
},
"payable": false,
"returnParameters": {
"id": 3460,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3459,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3466,
"src": "6435:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3458,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "6435:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6434:9:15"
},
"scope": 3760,
"src": "6352:132:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3477,
"nodeType": "Block",
"src": "6583:39:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3473,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3468,
"src": "6596:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3474,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "completed",
"nodeType": "MemberAccess",
"referencedDeclaration": 2786,
"src": "6596:14:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3475,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6596:21:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 3472,
"id": 3476,
"nodeType": "Return",
"src": "6589:28:15"
}
]
},
"documentation": null,
"id": 3478,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "countCompleted",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3469,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3468,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3478,
"src": "6512:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3467,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "6512:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6511:25:15"
},
"payable": false,
"returnParameters": {
"id": 3472,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3471,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3478,
"src": "6572:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3470,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "6572:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6571:9:15"
},
"scope": 3760,
"src": "6488:134:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3493,
"nodeType": "Block",
"src": "6743:55:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3487,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3480,
"src": "6756:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3488,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "submitterCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2791,
"src": "6756:18:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 3490,
"indexExpression": {
"argumentTypes": null,
"id": 3489,
"name": "_submitter",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3482,
"src": "6775:10:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "6756:30:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3491,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6756:37:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 3486,
"id": 3492,
"nodeType": "Return",
"src": "6749:44:15"
}
]
},
"documentation": null,
"id": 3494,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "countBySubmitter",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3483,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3480,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3494,
"src": "6652:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3479,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "6652:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3482,
"name": "_submitter",
"nodeType": "VariableDeclaration",
"scope": 3494,
"src": "6677:18:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3481,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "6677:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6651:45:15"
},
"payable": false,
"returnParameters": {
"id": 3486,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3485,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3494,
"src": "6732:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3484,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "6732:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6731:9:15"
},
"scope": 3760,
"src": "6626:172:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3509,
"nodeType": "Block",
"src": "6911:47:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3503,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3496,
"src": "6924:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3504,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "agentCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2796,
"src": "6924:14:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 3506,
"indexExpression": {
"argumentTypes": null,
"id": 3505,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3498,
"src": "6939:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "6924:22:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3507,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6924:29:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 3502,
"id": 3508,
"nodeType": "Return",
"src": "6917:36:15"
}
]
},
"documentation": null,
"id": 3510,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "countByAgent",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3499,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3496,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3510,
"src": "6824:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3495,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "6824:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3498,
"name": "_agent",
"nodeType": "VariableDeclaration",
"scope": 3510,
"src": "6849:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3497,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "6849:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6823:41:15"
},
"payable": false,
"returnParameters": {
"id": 3502,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3501,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3510,
"src": "6900:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3500,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "6900:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6899:9:15"
},
"scope": 3760,
"src": "6802:156:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3533,
"nodeType": "Block",
"src": "7077:110:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3524,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 3520,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3514,
"src": "7091:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "<",
"rightExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3521,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3512,
"src": "7098:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3522,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "7098:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3523,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "7098:16:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "7091:23:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "696e646578206d75737420736d616c6c207468616e2063757272656e7420636f756e74",
"id": 3525,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "7116:37:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_ced05a9863658d26be4f7cbaeffebfa53821dabbe1077d21241580b1e9ea74c5",
"typeString": "literal_string \"index must small than current count\""
},
"value": "index must small than current count"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_ced05a9863658d26be4f7cbaeffebfa53821dabbe1077d21241580b1e9ea74c5",
"typeString": "literal_string \"index must small than current count\""
}
],
"id": 3519,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "7083:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3526,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "7083:71:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3527,
"nodeType": "ExpressionStatement",
"src": "7083:71:15"
},
{
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3528,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3512,
"src": "7167:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3529,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "7167:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3531,
"indexExpression": {
"argumentTypes": null,
"id": 3530,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3514,
"src": "7177:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "7167:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"functionReturnParameters": 3518,
"id": 3532,
"nodeType": "Return",
"src": "7160:22:15"
}
]
},
"documentation": null,
"id": 3534,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getByIdx",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3515,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3512,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3534,
"src": "6980:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3511,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "6980:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3514,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 3534,
"src": "7005:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3513,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7005:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6979:39:15"
},
"payable": false,
"returnParameters": {
"id": 3518,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3517,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3534,
"src": "7054:19:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_memory_ptr",
"typeString": "struct CommandList.element"
},
"typeName": {
"contractScope": null,
"id": 3516,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "7054:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7053:21:15"
},
"scope": 3760,
"src": "6962:225:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3549,
"nodeType": "Block",
"src": "7311:48:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3544,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3536,
"src": "7324:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3545,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "submitterCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2791,
"src": "7324:18:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 3547,
"indexExpression": {
"argumentTypes": null,
"id": 3546,
"name": "_submitter",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3538,
"src": "7343:10:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "7324:30:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"functionReturnParameters": 3543,
"id": 3548,
"nodeType": "Return",
"src": "7317:37:15"
}
]
},
"documentation": null,
"id": 3550,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getIdxBySubmitter",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3539,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3536,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3550,
"src": "7218:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3535,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "7218:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3538,
"name": "_submitter",
"nodeType": "VariableDeclaration",
"scope": 3550,
"src": "7243:18:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3537,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "7243:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7217:45:15"
},
"payable": false,
"returnParameters": {
"id": 3543,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3542,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3550,
"src": "7298:9:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 3540,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7298:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3541,
"length": null,
"nodeType": "ArrayTypeName",
"src": "7298:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7297:11:15"
},
"scope": 3760,
"src": "7191:168:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3565,
"nodeType": "Block",
"src": "7475:40:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3560,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3552,
"src": "7488:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3561,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "agentCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2796,
"src": "7488:14:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 3563,
"indexExpression": {
"argumentTypes": null,
"id": 3562,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3554,
"src": "7503:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "7488:22:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"functionReturnParameters": 3559,
"id": 3564,
"nodeType": "Return",
"src": "7481:29:15"
}
]
},
"documentation": null,
"id": 3566,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getIdxByAgent",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3555,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3552,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3566,
"src": "7386:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3551,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "7386:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3554,
"name": "_agent",
"nodeType": "VariableDeclaration",
"scope": 3566,
"src": "7411:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3553,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "7411:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7385:41:15"
},
"payable": false,
"returnParameters": {
"id": 3559,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3558,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3566,
"src": "7462:9:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 3556,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7462:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3557,
"length": null,
"nodeType": "ArrayTypeName",
"src": "7462:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7461:11:15"
},
"scope": 3760,
"src": "7363:152:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3577,
"nodeType": "Block",
"src": "7615:30:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3574,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3568,
"src": "7628:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3575,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "7628:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"functionReturnParameters": 3573,
"id": 3576,
"nodeType": "Return",
"src": "7621:19:15"
}
]
},
"documentation": null,
"id": 3578,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getWaitingIdx",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3569,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3568,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3578,
"src": "7542:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3567,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "7542:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7541:25:15"
},
"payable": false,
"returnParameters": {
"id": 3573,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3572,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3578,
"src": "7602:9:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 3570,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7602:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3571,
"length": null,
"nodeType": "ArrayTypeName",
"src": "7602:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7601:11:15"
},
"scope": 3760,
"src": "7519:126:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3589,
"nodeType": "Block",
"src": "7745:30:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3586,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3580,
"src": "7758:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3587,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "7758:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"functionReturnParameters": 3585,
"id": 3588,
"nodeType": "Return",
"src": "7751:19:15"
}
]
},
"documentation": null,
"id": 3590,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getLockingIdx",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3581,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3580,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3590,
"src": "7672:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3579,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "7672:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7671:25:15"
},
"payable": false,
"returnParameters": {
"id": 3585,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3584,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3590,
"src": "7732:9:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 3582,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7732:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3583,
"length": null,
"nodeType": "ArrayTypeName",
"src": "7732:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7731:11:15"
},
"scope": 3760,
"src": "7649:126:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3666,
"nodeType": "Block",
"src": "7944:354:15",
"statements": [
{
"assignments": [
3606
],
"declarations": [
{
"constant": false,
"id": 3606,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "7950:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3605,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7950:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3608,
"initialValue": {
"argumentTypes": null,
"hexValue": "30",
"id": 3607,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "7965:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"nodeType": "VariableDeclarationStatement",
"src": "7950:16:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3612,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 3610,
"name": "_count",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3599,
"src": "7980:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">",
"rightExpression": {
"argumentTypes": null,
"hexValue": "30",
"id": 3611,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "7989:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"src": "7980:10:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "72657475726e206e756d626572206d75737420626967676572207468616e2030",
"id": 3613,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "7992:34:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_77e7c3b7b2e897d6d61c9adadd03e672f46f1501428d9e7f585ea1fd64517a2b",
"typeString": "literal_string \"return number must bigger than 0\""
},
"value": "return number must bigger than 0"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_77e7c3b7b2e897d6d61c9adadd03e672f46f1501428d9e7f585ea1fd64517a2b",
"typeString": "literal_string \"return number must bigger than 0\""
}
],
"id": 3609,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "7972:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3614,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "7972:55:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3615,
"nodeType": "ExpressionStatement",
"src": "7972:55:15"
},
{
"assignments": [
3620
],
"declarations": [
{
"constant": false,
"id": 3620,
"name": "res",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "8033:32:15",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element[]"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 3618,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "8033:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 3619,
"length": null,
"nodeType": "ArrayTypeName",
"src": "8033:21:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3626,
"initialValue": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3624,
"name": "_count",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3599,
"src": "8094:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3623,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "NewExpression",
"src": "8068:25:15",
"typeDescriptions": {
"typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_$",
"typeString": "function (uint256) pure returns (struct CommandList.element memory[] memory)"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 3621,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "8072:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 3622,
"length": null,
"nodeType": "ArrayTypeName",
"src": "8072:21:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
}
},
"id": 3625,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8068:33:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory",
"typeString": "struct CommandList.element memory[] memory"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "8033:68:15"
},
{
"body": {
"id": 3662,
"nodeType": "Block",
"src": "8154:123:15",
"statements": [
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3640,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 3638,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3606,
"src": "8166:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"id": 3639,
"name": "_count",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3599,
"src": "8174:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "8166:14:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 3643,
"nodeType": "IfStatement",
"src": "8162:44:15",
"trueBody": {
"id": 3642,
"nodeType": "Block",
"src": "8182:24:15",
"statements": [
{
"id": 3641,
"nodeType": "Break",
"src": "8192:5:15"
}
]
}
},
{
"expression": {
"argumentTypes": null,
"id": 3653,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 3644,
"name": "res",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3620,
"src": "8214:3:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element memory[] memory"
}
},
"id": 3646,
"indexExpression": {
"argumentTypes": null,
"id": 3645,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3606,
"src": "8218:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "8214:9:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_memory",
"typeString": "struct CommandList.element memory"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3647,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3592,
"src": "8226:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3648,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "8226:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3652,
"indexExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 3649,
"name": "_arr",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3595,
"src": "8236:4:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[] memory"
}
},
"id": 3651,
"indexExpression": {
"argumentTypes": null,
"id": 3650,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3628,
"src": "8241:1:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "8236:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "8226:18:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"src": "8214:30:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_memory",
"typeString": "struct CommandList.element memory"
}
},
"id": 3654,
"nodeType": "ExpressionStatement",
"src": "8214:30:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3660,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 3655,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3606,
"src": "8252:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3658,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "8268:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"id": 3656,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3606,
"src": "8259:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3657,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "add",
"nodeType": "MemberAccess",
"referencedDeclaration": 5635,
"src": "8259:8:15",
"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": 3659,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8259:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "8252:18:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3661,
"nodeType": "ExpressionStatement",
"src": "8252:18:15"
}
]
},
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3634,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 3631,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3628,
"src": "8132:1:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "<",
"rightExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3632,
"name": "_arr",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3595,
"src": "8136:4:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[] memory"
}
},
"id": 3633,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "8136:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "8132:15:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 3663,
"initializationExpression": {
"assignments": [
3628
],
"declarations": [
{
"constant": false,
"id": 3628,
"name": "i",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "8113:9:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3627,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "8113:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3630,
"initialValue": {
"argumentTypes": null,
"id": 3629,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3597,
"src": "8125:5:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "8113:17:15"
},
"loopExpression": {
"expression": {
"argumentTypes": null,
"id": 3636,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "UnaryOperation",
"operator": "++",
"prefix": false,
"src": "8149:3:15",
"subExpression": {
"argumentTypes": null,
"id": 3635,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3628,
"src": "8149:1:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3637,
"nodeType": "ExpressionStatement",
"src": "8149:3:15"
},
"nodeType": "ForStatement",
"src": "8108:169:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3664,
"name": "res",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3620,
"src": "8290:3:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element memory[] memory"
}
},
"functionReturnParameters": 3604,
"id": 3665,
"nodeType": "Return",
"src": "8283:10:15"
}
]
},
"documentation": null,
"id": 3667,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getElement",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3600,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3592,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "7804:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3591,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "7804:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3595,
"name": "_arr",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "7833:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 3593,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7833:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3594,
"length": null,
"nodeType": "ArrayTypeName",
"src": "7833:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3597,
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "7853:13:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3596,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7853:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3599,
"name": "_count",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "7872:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3598,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7872:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7798:92:15"
},
"payable": false,
"returnParameters": {
"id": 3604,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3603,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "7914:21:15",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element[]"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 3601,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "7914:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 3602,
"length": null,
"nodeType": "ArrayTypeName",
"src": "7914:21:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7913:30:15"
},
"scope": 3760,
"src": "7779:519:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3691,
"nodeType": "Block",
"src": "8475:81:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3682,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3669,
"src": "8499:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3683,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3669,
"src": "8505:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3684,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "submitterCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2791,
"src": "8505:18:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 3686,
"indexExpression": {
"argumentTypes": null,
"id": 3685,
"name": "_submitter",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3671,
"src": "8524:10:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "8505:30:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3687,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3673,
"src": "8537:5:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 3688,
"name": "_count",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3675,
"src": "8544:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3681,
"name": "getElement",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3667,
"src": "8488:10:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256[] memory,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
}
},
"id": 3689,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8488:63:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element memory[] memory"
}
},
"functionReturnParameters": 3680,
"id": 3690,
"nodeType": "Return",
"src": "8481:70:15"
}
]
},
"documentation": null,
"id": 3692,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getBySubmitter",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3676,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3669,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3692,
"src": "8331:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3668,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "8331:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3671,
"name": "_submitter",
"nodeType": "VariableDeclaration",
"scope": 3692,
"src": "8360:18:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3670,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "8360:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3673,
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 3692,
"src": "8384:13:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3672,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "8384:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3675,
"name": "_count",
"nodeType": "VariableDeclaration",
"scope": 3692,
"src": "8403:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3674,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "8403:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8325:96:15"
},
"payable": false,
"returnParameters": {
"id": 3680,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3679,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3692,
"src": "8445:21:15",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element[]"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 3677,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "8445:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 3678,
"length": null,
"nodeType": "ArrayTypeName",
"src": "8445:21:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8444:30:15"
},
"scope": 3760,
"src": "8302:254:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3716,
"nodeType": "Block",
"src": "8725:73:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3707,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3694,
"src": "8749:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3708,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3694,
"src": "8755:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3709,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "agentCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2796,
"src": "8755:14:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 3711,
"indexExpression": {
"argumentTypes": null,
"id": 3710,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3696,
"src": "8770:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "8755:22:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3712,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3698,
"src": "8779:5:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 3713,
"name": "_count",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3700,
"src": "8786:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3706,
"name": "getElement",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3667,
"src": "8738:10:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256[] memory,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
}
},
"id": 3714,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8738:55:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element memory[] memory"
}
},
"functionReturnParameters": 3705,
"id": 3715,
"nodeType": "Return",
"src": "8731:62:15"
}
]
},
"documentation": null,
"id": 3717,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getByAgent",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3701,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3694,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3717,
"src": "8585:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3693,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "8585:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3696,
"name": "_agent",
"nodeType": "VariableDeclaration",
"scope": 3717,
"src": "8614:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3695,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "8614:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3698,
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 3717,
"src": "8634:13:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3697,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "8634:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3700,
"name": "_count",
"nodeType": "VariableDeclaration",
"scope": 3717,
"src": "8653:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3699,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "8653:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8579:92:15"
},
"payable": false,
"returnParameters": {
"id": 3705,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3704,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3717,
"src": "8695:21:15",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element[]"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 3702,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "8695:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 3703,
"length": null,
"nodeType": "ArrayTypeName",
"src": "8695:21:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8694:30:15"
},
"scope": 3760,
"src": "8560:238:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3737,
"nodeType": "Block",
"src": "8948:64:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3730,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3719,
"src": "8972:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3731,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3719,
"src": "8978:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3732,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "canceled",
"nodeType": "MemberAccess",
"referencedDeclaration": 2783,
"src": "8978:13:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3733,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3721,
"src": "8993:5:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 3734,
"name": "_count",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3723,
"src": "9000:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3729,
"name": "getElement",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3667,
"src": "8961:10:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256[] memory,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
}
},
"id": 3735,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8961:46:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element memory[] memory"
}
},
"functionReturnParameters": 3728,
"id": 3736,
"nodeType": "Return",
"src": "8954:53:15"
}
]
},
"documentation": null,
"id": 3738,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getByCanceled",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3724,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3719,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3738,
"src": "8825:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3718,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "8825:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3721,
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 3738,
"src": "8850:13:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3720,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "8850:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3723,
"name": "_count",
"nodeType": "VariableDeclaration",
"scope": 3738,
"src": "8865:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3722,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "8865:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8824:56:15"
},
"payable": false,
"returnParameters": {
"id": 3728,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3727,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3738,
"src": "8916:21:15",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element[]"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 3725,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "8916:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 3726,
"length": null,
"nodeType": "ArrayTypeName",
"src": "8916:21:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8915:30:15"
},
"scope": 3760,
"src": "8802:210:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3758,
"nodeType": "Block",
"src": "9165:65:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3751,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3740,
"src": "9189:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3752,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3740,
"src": "9195:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3753,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "completed",
"nodeType": "MemberAccess",
"referencedDeclaration": 2786,
"src": "9195:14:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3754,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3742,
"src": "9211:5:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 3755,
"name": "_count",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3744,
"src": "9218:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3750,
"name": "getElement",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3667,
"src": "9178:10:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256[] memory,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
}
},
"id": 3756,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "9178:47:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element memory[] memory"
}
},
"functionReturnParameters": 3749,
"id": 3757,
"nodeType": "Return",
"src": "9171:54:15"
}
]
},
"documentation": null,
"id": 3759,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getByCompleted",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3745,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3740,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3759,
"src": "9045:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3739,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "9045:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3742,
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 3759,
"src": "9074:13:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3741,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "9074:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3744,
"name": "_count",
"nodeType": "VariableDeclaration",
"scope": 3759,
"src": "9093:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3743,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "9093:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "9039:72:15"
},
"payable": false,
"returnParameters": {
"id": 3749,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3748,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3759,
"src": "9135:21:15",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element[]"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 3746,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "9135:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 3747,
"length": null,
"nodeType": "ArrayTypeName",
"src": "9135:21:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "9134:30:15"
},
"scope": 3760,
"src": "9016:214:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
}
],
"scope": 3761,
"src": "126:9106:15"
}
],
"src": "0:9233:15"
},
"legacyAST": {
"absolutePath": "/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/list/CommandList.sol",
"exportedSymbols": {
"CommandList": [
3760
]
},
"id": 3761,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 2748,
"literals": [
"solidity",
">=",
"0.4",
".24"
],
"nodeType": "PragmaDirective",
"src": "0:25:15"
},
{
"absolutePath": "/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/math/SafeMath.sol",
"file": "../math/SafeMath.sol",
"id": 2749,
"nodeType": "ImportDirective",
"scope": 3761,
"sourceUnit": 5658,
"src": "27:30:15",
"symbolAliases": [],
"unitAlias": ""
},
{
"baseContracts": [],
"contractDependencies": [],
"contractKind": "library",
"documentation": "@dev 通证列表处理",
"fullyImplemented": true,
"id": 3760,
"linearizedBaseContracts": [
3760
],
"name": "CommandList",
"nodeType": "ContractDefinition",
"nodes": [
{
"id": 2752,
"libraryName": {
"contractScope": null,
"id": 2750,
"name": "SafeMath",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 5657,
"src": "156:8:15",
"typeDescriptions": {
"typeIdentifier": "t_contract$_SafeMath_$5657",
"typeString": "library SafeMath"
}
},
"nodeType": "UsingForDirective",
"src": "150:27:15",
"typeName": {
"id": 2751,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "169:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
},
{
"canonicalName": "CommandList.Verbs",
"id": 2756,
"members": [
{
"id": 2753,
"name": "TRANSFER",
"nodeType": "EnumValue",
"src": "193:8:15"
},
{
"id": 2754,
"name": "EXCHANGE",
"nodeType": "EnumValue",
"src": "203:8:15"
},
{
"id": 2755,
"name": "EXECUTE",
"nodeType": "EnumValue",
"src": "213:7:15"
}
],
"name": "Verbs",
"nodeType": "EnumDefinition",
"src": "181:40:15"
},
{
"canonicalName": "CommandList.element",
"id": 2771,
"members": [
{
"constant": false,
"id": 2758,
"name": "submitter",
"nodeType": "VariableDeclaration",
"scope": 2771,
"src": "281:17:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 2757,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "281:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2760,
"name": "agent",
"nodeType": "VariableDeclaration",
"scope": 2771,
"src": "321:13:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 2759,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "321:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2762,
"name": "fromChain",
"nodeType": "VariableDeclaration",
"scope": 2771,
"src": "372:17:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2761,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "372:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2764,
"name": "toChain",
"nodeType": "VariableDeclaration",
"scope": 2771,
"src": "430:15:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2763,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "430:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2766,
"name": "verbs",
"nodeType": "VariableDeclaration",
"scope": 2771,
"src": "497:13:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2765,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "497:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2768,
"name": "status",
"nodeType": "VariableDeclaration",
"scope": 2771,
"src": "677:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2767,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "677:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2770,
"name": "payloadHash",
"nodeType": "VariableDeclaration",
"scope": 2771,
"src": "782:19:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 2769,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "782:7:15",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"name": "element",
"nodeType": "StructDefinition",
"scope": 3760,
"src": "243:563:15",
"visibility": "public"
},
{
"canonicalName": "CommandList.commandMap",
"id": 2797,
"members": [
{
"constant": false,
"id": 2774,
"name": "list",
"nodeType": "VariableDeclaration",
"scope": 2797,
"src": "865:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 2772,
"name": "element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "865:7:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 2773,
"length": null,
"nodeType": "ArrayTypeName",
"src": "865:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2777,
"name": "waiting",
"nodeType": "VariableDeclaration",
"scope": 2797,
"src": "910:17:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 2775,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "910:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2776,
"length": null,
"nodeType": "ArrayTypeName",
"src": "910:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2780,
"name": "locking",
"nodeType": "VariableDeclaration",
"scope": 2797,
"src": "968:17:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 2778,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "968:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2779,
"length": null,
"nodeType": "ArrayTypeName",
"src": "968:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2783,
"name": "canceled",
"nodeType": "VariableDeclaration",
"scope": 2797,
"src": "1055:18:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 2781,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1055:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2782,
"length": null,
"nodeType": "ArrayTypeName",
"src": "1055:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2786,
"name": "completed",
"nodeType": "VariableDeclaration",
"scope": 2797,
"src": "1104:19:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 2784,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1104:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2785,
"length": null,
"nodeType": "ArrayTypeName",
"src": "1104:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2791,
"name": "submitterCmds",
"nodeType": "VariableDeclaration",
"scope": 2797,
"src": "1177:43:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[])"
},
"typeName": {
"id": 2790,
"keyType": {
"id": 2787,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1185:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Mapping",
"src": "1177:29:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[])"
},
"valueType": {
"baseType": {
"id": 2788,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1196:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2789,
"length": null,
"nodeType": "ArrayTypeName",
"src": "1196:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2796,
"name": "agentCmds",
"nodeType": "VariableDeclaration",
"scope": 2797,
"src": "1274:39:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[])"
},
"typeName": {
"id": 2795,
"keyType": {
"id": 2792,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1282:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Mapping",
"src": "1274:29:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[])"
},
"valueType": {
"baseType": {
"id": 2793,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1293:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2794,
"length": null,
"nodeType": "ArrayTypeName",
"src": "1293:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
}
},
"value": null,
"visibility": "internal"
}
],
"name": "commandMap",
"nodeType": "StructDefinition",
"scope": 3760,
"src": "810:508:15",
"visibility": "public"
},
{
"body": {
"id": 2826,
"nodeType": "Block",
"src": "1358:184:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"id": 2821,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"id": 2814,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2807,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 2802,
"name": "_verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2799,
"src": "1379:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2804,
"name": "Verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2756,
"src": "1397:5:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_enum$_Verbs_$2756_$",
"typeString": "type(enum CommandList.Verbs)"
}
},
"id": 2805,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"memberName": "TRANSFER",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "1397:14:15",
"typeDescriptions": {
"typeIdentifier": "t_enum$_Verbs_$2756",
"typeString": "enum CommandList.Verbs"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_enum$_Verbs_$2756",
"typeString": "enum CommandList.Verbs"
}
],
"id": 2803,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "1389:7:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_uint256_$",
"typeString": "type(uint256)"
},
"typeName": "uint256"
},
"id": 2806,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1389:23:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "1379:33:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "BinaryOperation",
"operator": "||",
"rightExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2813,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 2808,
"name": "_verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2799,
"src": "1424:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2810,
"name": "Verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2756,
"src": "1442:5:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_enum$_Verbs_$2756_$",
"typeString": "type(enum CommandList.Verbs)"
}
},
"id": 2811,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"memberName": "EXCHANGE",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "1442:14:15",
"typeDescriptions": {
"typeIdentifier": "t_enum$_Verbs_$2756",
"typeString": "enum CommandList.Verbs"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_enum$_Verbs_$2756",
"typeString": "enum CommandList.Verbs"
}
],
"id": 2809,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "1434:7:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_uint256_$",
"typeString": "type(uint256)"
},
"typeName": "uint256"
},
"id": 2812,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1434:23:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "1424:33:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"src": "1379:78:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "BinaryOperation",
"operator": "||",
"rightExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2820,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 2815,
"name": "_verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2799,
"src": "1469:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2817,
"name": "Verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2756,
"src": "1487:5:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_enum$_Verbs_$2756_$",
"typeString": "type(enum CommandList.Verbs)"
}
},
"id": 2818,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"memberName": "EXECUTE",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "1487:13:15",
"typeDescriptions": {
"typeIdentifier": "t_enum$_Verbs_$2756",
"typeString": "enum CommandList.Verbs"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_enum$_Verbs_$2756",
"typeString": "enum CommandList.Verbs"
}
],
"id": 2816,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "1479:7:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_uint256_$",
"typeString": "type(uint256)"
},
"typeName": "uint256"
},
"id": 2819,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1479:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "1469:32:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"src": "1379:122:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "696e76616c6964207665726273",
"id": 2822,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "1509:15:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_d10f2007c30c709fd945813d5aff5976e48b0726c1279fc7bce8a6cb3941915b",
"typeString": "literal_string \"invalid verbs\""
},
"value": "invalid verbs"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_d10f2007c30c709fd945813d5aff5976e48b0726c1279fc7bce8a6cb3941915b",
"typeString": "literal_string \"invalid verbs\""
}
],
"id": 2801,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "1364:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 2823,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "1364:166:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 2824,
"nodeType": "ExpressionStatement",
"src": "1364:166:15"
},
{
"id": 2825,
"nodeType": "PlaceholderStatement",
"src": "1536:1:15"
}
]
},
"documentation": null,
"id": 2827,
"name": "validVerbs",
"nodeType": "ModifierDefinition",
"parameters": {
"id": 2800,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2799,
"name": "_verbs",
"nodeType": "VariableDeclaration",
"scope": 2827,
"src": "1342:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2798,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1342:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1341:16:15"
},
"src": "1322:220:15",
"visibility": "internal"
},
{
"body": {
"id": 2846,
"nodeType": "Block",
"src": "1643:70:15",
"statements": [
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2840,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 2836,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2831,
"src": "1653:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">=",
"rightExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2837,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2829,
"src": "1661:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 2838,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "1661:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 2839,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "1661:16:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "1653:24:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 2843,
"nodeType": "IfStatement",
"src": "1649:42:15",
"trueBody": {
"expression": {
"argumentTypes": null,
"hexValue": "66616c7365",
"id": 2841,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "1686:5:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "false"
},
"functionReturnParameters": 2835,
"id": 2842,
"nodeType": "Return",
"src": "1679:12:15"
}
},
{
"expression": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 2844,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "1704:4:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"functionReturnParameters": 2835,
"id": 2845,
"nodeType": "Return",
"src": "1697:11:15"
}
]
},
"documentation": null,
"id": 2847,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "exist",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 2832,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2829,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 2847,
"src": "1561:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 2828,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "1561:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2831,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 2847,
"src": "1586:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2830,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1586:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1560:39:15"
},
"payable": false,
"returnParameters": {
"id": 2835,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2834,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 2847,
"src": "1635:4:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 2833,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "1635:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1634:6:15"
},
"scope": 3760,
"src": "1546:167:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 2914,
"nodeType": "Block",
"src": "1971:379:15",
"statements": [
{
"assignments": [
2868
],
"declarations": [
{
"constant": false,
"id": 2868,
"name": "e",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1977:16:15",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_memory_ptr",
"typeString": "struct CommandList.element"
},
"typeName": {
"contractScope": null,
"id": 2867,
"name": "element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "1977:7:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 2880,
"initialValue": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 2870,
"name": "_submitter",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2851,
"src": "2023:10:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "30",
"id": 2872,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2056:1:15",
"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": 2871,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "2048:7:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_address_$",
"typeString": "type(address)"
},
"typeName": "address"
},
"id": 2873,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2048:10:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
{
"argumentTypes": null,
"id": 2874,
"name": "_fromChain",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2853,
"src": "2077:10:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 2875,
"name": "_toChain",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2855,
"src": "2104:8:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 2876,
"name": "_verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2857,
"src": "2127:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"hexValue": "31",
"id": 2877,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2149:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
},
{
"argumentTypes": null,
"id": 2878,
"name": "_payloadHash",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2859,
"src": "2171:12:15",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
}
],
"expression": {
"argumentTypes": null,
"id": 2869,
"name": "element",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2771,
"src": "1996:7:15",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_struct$_element_$2771_storage_ptr_$",
"typeString": "type(struct CommandList.element storage pointer)"
}
},
"id": 2879,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "structConstructorCall",
"lValueRequested": false,
"names": [
"submitter",
"agent",
"fromChain",
"toChain",
"verbs",
"status",
"payloadHash"
],
"nodeType": "FunctionCall",
"src": "1996:194:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_memory",
"typeString": "struct CommandList.element memory"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "1977:213:15"
},
{
"assignments": [
2882
],
"declarations": [
{
"constant": false,
"id": 2882,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "2197:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2881,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2197:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 2886,
"initialValue": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2883,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2849,
"src": "2212:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 2884,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "2212:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 2885,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "2212:16:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "2197:31:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 2892,
"name": "e",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2868,
"src": "2249:1:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_memory_ptr",
"typeString": "struct CommandList.element memory"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_element_$2771_memory_ptr",
"typeString": "struct CommandList.element memory"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2887,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2849,
"src": "2234:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 2890,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "2234:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 2891,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "2234:14:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_struct$_element_$2771_storage_$returns$_t_uint256_$",
"typeString": "function (struct CommandList.element storage ref) returns (uint256)"
}
},
"id": 2893,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2234:17:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2894,
"nodeType": "ExpressionStatement",
"src": "2234:17:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 2900,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2882,
"src": "2275:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2895,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2849,
"src": "2257:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 2898,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "2257:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 2899,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "2257:17:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) returns (uint256)"
}
},
"id": 2901,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2257:23:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2902,
"nodeType": "ExpressionStatement",
"src": "2257:23:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 2909,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2882,
"src": "2322:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2903,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2849,
"src": "2286:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 2906,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "submitterCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2791,
"src": "2286:18:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 2907,
"indexExpression": {
"argumentTypes": null,
"id": 2905,
"name": "_submitter",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2851,
"src": "2305:10:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "2286:30:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 2908,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "2286:35:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) returns (uint256)"
}
},
"id": 2910,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2286:41:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2911,
"nodeType": "ExpressionStatement",
"src": "2286:41:15"
},
{
"expression": {
"argumentTypes": null,
"id": 2912,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2882,
"src": "2341:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 2866,
"id": 2913,
"nodeType": "Return",
"src": "2334:11:15"
}
]
},
"documentation": null,
"id": 2915,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [
{
"arguments": [
{
"argumentTypes": null,
"id": 2862,
"name": "_verbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2857,
"src": "1945:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 2863,
"modifierName": {
"argumentTypes": null,
"id": 2861,
"name": "validVerbs",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2827,
"src": "1934:10:15",
"typeDescriptions": {
"typeIdentifier": "t_modifier$_t_uint256_$",
"typeString": "modifier (uint256)"
}
},
"nodeType": "ModifierInvocation",
"src": "1934:18:15"
}
],
"name": "insert",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 2860,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2849,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1781:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 2848,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "1781:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2851,
"name": "_submitter",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1810:18:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 2850,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "1810:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2853,
"name": "_fromChain",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1834:18:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2852,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1834:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2855,
"name": "_toChain",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1858:16:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2854,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1858:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2857,
"name": "_verbs",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1880:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2856,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1880:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2859,
"name": "_payloadHash",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1900:20:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
},
"typeName": {
"id": 2858,
"name": "bytes32",
"nodeType": "ElementaryTypeName",
"src": "1900:7:15",
"typeDescriptions": {
"typeIdentifier": "t_bytes32",
"typeString": "bytes32"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1775:149:15"
},
"payable": false,
"returnParameters": {
"id": 2866,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2865,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 2915,
"src": "1962:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2864,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "1962:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "1961:9:15"
},
"scope": 3760,
"src": "1760:590:15",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 2976,
"nodeType": "Block",
"src": "2452:239:15",
"statements": [
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2930,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2927,
"name": "_arr",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2918,
"src": "2462:4:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[] memory"
}
},
"id": 2928,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "2462:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"hexValue": "30",
"id": 2929,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2477:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"src": "2462:16:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 2936,
"nodeType": "IfStatement",
"src": "2458:54:15",
"trueBody": {
"id": 2935,
"nodeType": "Block",
"src": "2480:32:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"hexValue": "66616c7365",
"id": 2931,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2496:5:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "false"
},
{
"argumentTypes": null,
"hexValue": "30",
"id": 2932,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2503:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
}
],
"id": 2933,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "2495:10:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$",
"typeString": "tuple(bool,int_const 0)"
}
},
"functionReturnParameters": 2926,
"id": 2934,
"nodeType": "Return",
"src": "2488:17:15"
}
]
}
},
{
"body": {
"id": 2961,
"nodeType": "Block",
"src": "2563:70:15",
"statements": [
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2954,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 2950,
"name": "_arr",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2918,
"src": "2575:4:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[] memory"
}
},
"id": 2952,
"indexExpression": {
"argumentTypes": null,
"id": 2951,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2938,
"src": "2580:1:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "2575:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"id": 2953,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2920,
"src": "2586:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "2575:15:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 2960,
"nodeType": "IfStatement",
"src": "2571:56:15",
"trueBody": {
"id": 2959,
"nodeType": "Block",
"src": "2592:35:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"hexValue": "74727565",
"id": 2955,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2610:4:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
{
"argumentTypes": null,
"id": 2956,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2938,
"src": "2616:1:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 2957,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "2609:9:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"functionReturnParameters": 2926,
"id": 2958,
"nodeType": "Return",
"src": "2602:16:15"
}
]
}
}
]
},
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2946,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 2944,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2938,
"src": "2551:1:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">",
"rightExpression": {
"argumentTypes": null,
"hexValue": "30",
"id": 2945,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2555:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"src": "2551:5:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 2962,
"initializationExpression": {
"assignments": [
2938
],
"declarations": [
{
"constant": false,
"id": 2938,
"name": "i",
"nodeType": "VariableDeclaration",
"scope": 2977,
"src": "2522:9:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2937,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2522:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 2943,
"initialValue": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2942,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 2939,
"name": "_arr",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2918,
"src": "2534:4:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[] memory"
}
},
"id": 2940,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "2534:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "-",
"rightExpression": {
"argumentTypes": null,
"hexValue": "31",
"id": 2941,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2548:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
},
"src": "2534:15:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "2522:27:15"
},
"loopExpression": {
"expression": {
"argumentTypes": null,
"id": 2948,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "UnaryOperation",
"operator": "--",
"prefix": false,
"src": "2558:3:15",
"subExpression": {
"argumentTypes": null,
"id": 2947,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2938,
"src": "2558:1:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2949,
"nodeType": "ExpressionStatement",
"src": "2558:3:15"
},
"nodeType": "ForStatement",
"src": "2517:116:15"
},
{
"expression": {
"argumentTypes": null,
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 2967,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 2963,
"name": "_arr",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2918,
"src": "2646:4:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[] memory"
}
},
"id": 2965,
"indexExpression": {
"argumentTypes": null,
"hexValue": "30",
"id": 2964,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2651:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "2646:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"id": 2966,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2920,
"src": "2657:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "2646:15:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseExpression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"hexValue": "66616c7365",
"id": 2971,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2677:5:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "false"
},
{
"argumentTypes": null,
"hexValue": "30",
"id": 2972,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2684:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
}
],
"id": 2973,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "2676:10:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$",
"typeString": "tuple(bool,int_const 0)"
}
},
"id": 2974,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "Conditional",
"src": "2646:40:15",
"trueExpression": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"hexValue": "74727565",
"id": 2968,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2665:4:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
{
"argumentTypes": null,
"hexValue": "30",
"id": 2969,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2671:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
}
],
"id": 2970,
"isConstant": false,
"isInlineArray": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "TupleExpression",
"src": "2664:9:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_rational_0_by_1_$",
"typeString": "tuple(bool,int_const 0)"
}
},
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint8_$",
"typeString": "tuple(bool,uint8)"
}
},
"functionReturnParameters": 2926,
"id": 2975,
"nodeType": "Return",
"src": "2639:47:15"
}
]
},
"documentation": null,
"id": 2977,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getIdx",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 2921,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2918,
"name": "_arr",
"nodeType": "VariableDeclaration",
"scope": 2977,
"src": "2370:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 2916,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2370:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 2917,
"length": null,
"nodeType": "ArrayTypeName",
"src": "2370:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2920,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 2977,
"src": "2386:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2919,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2386:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2369:30:15"
},
"payable": false,
"returnParameters": {
"id": 2926,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2923,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 2977,
"src": "2435:4:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 2922,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "2435:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2925,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 2977,
"src": "2441:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2924,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2441:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2434:15:15"
},
"scope": 3760,
"src": "2354:337:15",
"stateMutability": "pure",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3083,
"nodeType": "Block",
"src": "2798:623:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 2990,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "2818:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"id": 2991,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2983,
"src": "2824:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 2989,
"name": "exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2847,
"src": "2812:5:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_uint256_$returns$_t_bool_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256) view returns (bool)"
}
},
"id": 2992,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2812:17:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "6c6f636b20636f6d6d616e6420646f6573206e6f74206578697374",
"id": 2993,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "2831:29:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_e2b5185cc4be90cba22e7103b0d693bf7820d08408953d2d4d0897eefe2cb888",
"typeString": "literal_string \"lock command does not exist\""
},
"value": "lock command does not exist"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_e2b5185cc4be90cba22e7103b0d693bf7820d08408953d2d4d0897eefe2cb888",
"typeString": "literal_string \"lock command does not exist\""
}
],
"id": 2988,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "2804:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 2994,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2804:57:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 2995,
"nodeType": "ExpressionStatement",
"src": "2804:57:15"
},
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 2997,
"name": "_waitingIdx",
"nodeType": "VariableDeclaration",
"scope": 3084,
"src": "2896:19:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2996,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2896:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 2998,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "2896:19:15"
},
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 3000,
"name": "_exist",
"nodeType": "VariableDeclaration",
"scope": 3084,
"src": "2921:11:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 2999,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "2921:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3001,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "2921:11:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3010,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"id": 3002,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3000,
"src": "2939:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"id": 3003,
"name": "_waitingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2997,
"src": "2947:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 3004,
"isConstant": false,
"isInlineArray": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "TupleExpression",
"src": "2938:21:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3006,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "2969:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3007,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "2969:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3008,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2983,
"src": "2983:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3005,
"name": "getIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2977,
"src": "2962:6:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$returns$_t_bool_$_t_uint256_$",
"typeString": "function (uint256[] memory,uint256) pure returns (bool,uint256)"
}
},
"id": 3009,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2962:26:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"src": "2938:50:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3011,
"nodeType": "ExpressionStatement",
"src": "2938:50:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3013,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3000,
"src": "3002:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "69647820646f6573206e6f7420657869737420696e2077616974696e67206c697374",
"id": 3014,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3010:36:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_189d1ca4d34a222d8daf8e1411d2e06ecb95010e1578187967a27f508e5ed9d2",
"typeString": "literal_string \"idx does not exist in waiting list\""
},
"value": "idx does not exist in waiting list"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_189d1ca4d34a222d8daf8e1411d2e06ecb95010e1578187967a27f508e5ed9d2",
"typeString": "literal_string \"idx does not exist in waiting list\""
}
],
"id": 3012,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "2994:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3015,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "2994:53:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3016,
"nodeType": "ExpressionStatement",
"src": "2994:53:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3031,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3017,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3085:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3020,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3085:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3021,
"indexExpression": {
"argumentTypes": null,
"id": 3019,
"name": "_waitingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2997,
"src": "3098:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "3085:25:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3022,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3113:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3023,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3113:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3030,
"indexExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3028,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3150:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3024,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3126:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3025,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3126:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3026,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3126:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3027,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "3126:23:15",
"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": 3029,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3126:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3113:40:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "3085:68:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3032,
"nodeType": "ExpressionStatement",
"src": "3085:68:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3044,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3033,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3159:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3036,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3159:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3037,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3159:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3042,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3205:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3038,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3181:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3039,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3181:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3040,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3181:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3041,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "3181:23:15",
"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": 3043,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3181:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "3159:48:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3045,
"nodeType": "ExpressionStatement",
"src": "3159:48:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3051,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2983,
"src": "3255:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3046,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3237:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3049,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "3237:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3050,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3237:17:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) returns (uint256)"
}
},
"id": 3052,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3237:23:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3053,
"nodeType": "ExpressionStatement",
"src": "3237:23:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3061,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3054,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3297:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3057,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "3297:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3058,
"indexExpression": {
"argumentTypes": null,
"id": 3056,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2983,
"src": "3307:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3297:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3059,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "agent",
"nodeType": "MemberAccess",
"referencedDeclaration": 2760,
"src": "3297:21:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"id": 3060,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2981,
"src": "3321:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"src": "3297:30:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"id": 3062,
"nodeType": "ExpressionStatement",
"src": "3297:30:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3070,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3063,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3333:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3066,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "3333:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3067,
"indexExpression": {
"argumentTypes": null,
"id": 3065,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2983,
"src": "3343:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3333:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3068,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "3333:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "32",
"id": 3069,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3358:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_2_by_1",
"typeString": "int_const 2"
},
"value": "2"
},
"src": "3333:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3071,
"nodeType": "ExpressionStatement",
"src": "3333:26:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3078,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2983,
"src": "3393:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3072,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2979,
"src": "3365:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3075,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "agentCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2796,
"src": "3365:14:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 3076,
"indexExpression": {
"argumentTypes": null,
"id": 3074,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2981,
"src": "3380:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3365:22:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3077,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3365:27:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) returns (uint256)"
}
},
"id": 3079,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3365:33:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3080,
"nodeType": "ExpressionStatement",
"src": "3365:33:15"
},
{
"expression": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 3081,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3412:4:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"functionReturnParameters": 2987,
"id": 3082,
"nodeType": "Return",
"src": "3405:11:15"
}
]
},
"documentation": null,
"id": 3084,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "lock",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 2984,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2979,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3084,
"src": "2709:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 2978,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "2709:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2981,
"name": "_agent",
"nodeType": "VariableDeclaration",
"scope": 3084,
"src": "2734:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 2980,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "2734:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 2983,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 3084,
"src": "2750:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 2982,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "2750:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2708:55:15"
},
"payable": false,
"returnParameters": {
"id": 2987,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 2986,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3084,
"src": "2790:4:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 2985,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "2790:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "2789:6:15"
},
"scope": 3760,
"src": "2695:726:15",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3162,
"nodeType": "Block",
"src": "3525:460:15",
"statements": [
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 3094,
"name": "_waitingIdx",
"nodeType": "VariableDeclaration",
"scope": 3163,
"src": "3559:19:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3093,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "3559:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3095,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "3559:19:15"
},
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 3097,
"name": "_exist",
"nodeType": "VariableDeclaration",
"scope": 3163,
"src": "3584:11:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 3096,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "3584:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3098,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "3584:11:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3107,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"id": 3099,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3097,
"src": "3602:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"id": 3100,
"name": "_waitingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3094,
"src": "3610:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 3101,
"isConstant": false,
"isInlineArray": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "TupleExpression",
"src": "3601:21:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3103,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3632:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3104,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3632:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3105,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3088,
"src": "3646:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3102,
"name": "getIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2977,
"src": "3625:6:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$returns$_t_bool_$_t_uint256_$",
"typeString": "function (uint256[] memory,uint256) pure returns (bool,uint256)"
}
},
"id": 3106,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3625:26:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"src": "3601:50:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3108,
"nodeType": "ExpressionStatement",
"src": "3601:50:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3110,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3097,
"src": "3665:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "69647820646f6573206e6f7420657869737420696e2077616974696e67206c697374",
"id": 3111,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3673:36:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_189d1ca4d34a222d8daf8e1411d2e06ecb95010e1578187967a27f508e5ed9d2",
"typeString": "literal_string \"idx does not exist in waiting list\""
},
"value": "idx does not exist in waiting list"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_189d1ca4d34a222d8daf8e1411d2e06ecb95010e1578187967a27f508e5ed9d2",
"typeString": "literal_string \"idx does not exist in waiting list\""
}
],
"id": 3109,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "3657:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3112,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3657:53:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3113,
"nodeType": "ExpressionStatement",
"src": "3657:53:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3128,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3114,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3750:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3117,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3750:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3118,
"indexExpression": {
"argumentTypes": null,
"id": 3116,
"name": "_waitingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3094,
"src": "3763:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "3750:25:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3119,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3778:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3120,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3778:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3127,
"indexExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3125,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3815:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3121,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3791:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3122,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3791:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3123,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3791:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3124,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "3791:23:15",
"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": 3126,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3791:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3778:40:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "3750:68:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3129,
"nodeType": "ExpressionStatement",
"src": "3750:68:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3141,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3130,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3824:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3133,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3824:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3134,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3824:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3139,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3870:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3135,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3846:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3136,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "3846:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3137,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3846:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3138,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "3846:23:15",
"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": 3140,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3846:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "3824:48:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3142,
"nodeType": "ExpressionStatement",
"src": "3824:48:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3148,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3088,
"src": "3925:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3143,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3906:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3146,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "canceled",
"nodeType": "MemberAccess",
"referencedDeclaration": 2783,
"src": "3906:13:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3147,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "3906:18:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) returns (uint256)"
}
},
"id": 3149,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "3906:24:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3150,
"nodeType": "ExpressionStatement",
"src": "3906:24:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3158,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3151,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3086,
"src": "3936:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3154,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "3936:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3155,
"indexExpression": {
"argumentTypes": null,
"id": 3153,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3088,
"src": "3946:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "3936:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3156,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "3936:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "34",
"id": 3157,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3961:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_4_by_1",
"typeString": "int_const 4"
},
"value": "4"
},
"src": "3936:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3159,
"nodeType": "ExpressionStatement",
"src": "3936:26:15"
},
{
"expression": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 3160,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "3976:4:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"functionReturnParameters": 3092,
"id": 3161,
"nodeType": "Return",
"src": "3969:11:15"
}
]
},
"documentation": null,
"id": 3163,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "cancelFromWaiting",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3089,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3086,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3163,
"src": "3452:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3085,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "3452:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3088,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 3163,
"src": "3477:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3087,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "3477:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "3451:39:15"
},
"payable": false,
"returnParameters": {
"id": 3092,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3091,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3163,
"src": "3517:4:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 3090,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "3517:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "3516:6:15"
},
"scope": 3760,
"src": "3425:560:15",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3306,
"nodeType": "Block",
"src": "4094:1025:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3176,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4114:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"id": 3177,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4120:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3175,
"name": "exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2847,
"src": "4108:5:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_uint256_$returns$_t_bool_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256) view returns (bool)"
}
},
"id": 3178,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4108:17:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "6c6f636b20636f6d6d616e6420646f6573206e6f74206578697374",
"id": 3179,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4127:29:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_e2b5185cc4be90cba22e7103b0d693bf7820d08408953d2d4d0897eefe2cb888",
"typeString": "literal_string \"lock command does not exist\""
},
"value": "lock command does not exist"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_e2b5185cc4be90cba22e7103b0d693bf7820d08408953d2d4d0897eefe2cb888",
"typeString": "literal_string \"lock command does not exist\""
}
],
"id": 3174,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "4100:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3180,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4100:57:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3181,
"nodeType": "ExpressionStatement",
"src": "4100:57:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"id": 3197,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3189,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3183,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4178:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3184,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "4178:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3186,
"indexExpression": {
"argumentTypes": null,
"id": 3185,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4188:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "4178:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3187,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "4178:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "!=",
"rightExpression": {
"argumentTypes": null,
"hexValue": "34",
"id": 3188,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4204:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_4_by_1",
"typeString": "int_const 4"
},
"value": "4"
},
"src": "4178:27:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"nodeType": "BinaryOperation",
"operator": "&&",
"rightExpression": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3196,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3190,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4209:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3191,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "4209:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3193,
"indexExpression": {
"argumentTypes": null,
"id": 3192,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4219:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "4209:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3194,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "4209:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "!=",
"rightExpression": {
"argumentTypes": null,
"hexValue": "35",
"id": 3195,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4235:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_5_by_1",
"typeString": "int_const 5"
},
"value": "5"
},
"src": "4209:27:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"src": "4178:58:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "6c6f636b20636f6d6d616e64207374617475732063616e206e6f742062652063616e63656c6564206f7220646f6e65",
"id": 3198,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4244:49:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_365fa5f5d92ae96348066ced42f20135202acd5efc338eac65c5e8100b9e62eb",
"typeString": "literal_string \"lock command status can not be canceled or done\""
},
"value": "lock command status can not be canceled or done"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_365fa5f5d92ae96348066ced42f20135202acd5efc338eac65c5e8100b9e62eb",
"typeString": "literal_string \"lock command status can not be canceled or done\""
}
],
"id": 3182,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "4163:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3199,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4163:136:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3200,
"nodeType": "ExpressionStatement",
"src": "4163:136:15"
},
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3207,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3201,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4333:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3202,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "4333:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3204,
"indexExpression": {
"argumentTypes": null,
"id": 3203,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4343:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "4333:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3205,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "4333:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"hexValue": "31",
"id": 3206,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4359:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
},
"src": "4333:27:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 3225,
"nodeType": "IfStatement",
"src": "4329:234:15",
"trueBody": {
"id": 3224,
"nodeType": "Block",
"src": "4362:201:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"id": 3215,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 3209,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3167,
"src": "4425:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3210,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4435:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3211,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "4435:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3213,
"indexExpression": {
"argumentTypes": null,
"id": 3212,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4445:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "4435:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3214,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "submitter",
"nodeType": "MemberAccess",
"referencedDeclaration": 2758,
"src": "4435:25:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"src": "4425:35:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "75736572206f6e6c792063616e63656c2068696d206f776e20636f6d6d616e64",
"id": 3216,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4470:34:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_cf2cae9839861fcada48b6891f1cabe06564a281bc77dd5e52485577fb99f51d",
"typeString": "literal_string \"user only cancel him own command\""
},
"value": "user only cancel him own command"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_cf2cae9839861fcada48b6891f1cabe06564a281bc77dd5e52485577fb99f51d",
"typeString": "literal_string \"user only cancel him own command\""
}
],
"id": 3208,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "4408:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3217,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4408:104:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3218,
"nodeType": "ExpressionStatement",
"src": "4408:104:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3220,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4545:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"id": 3221,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4551:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3219,
"name": "cancelFromWaiting",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3163,
"src": "4527:17:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_struct$_commandMap_$2797_storage_ptr_$_t_uint256_$returns$_t_bool_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256) returns (bool)"
}
},
"id": 3222,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4527:29:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"functionReturnParameters": 3173,
"id": 3223,
"nodeType": "Return",
"src": "4520:36:15"
}
]
}
},
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 3227,
"name": "_lockingIdx",
"nodeType": "VariableDeclaration",
"scope": 3307,
"src": "4617:19:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3226,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "4617:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3228,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "4617:19:15"
},
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 3230,
"name": "_exist",
"nodeType": "VariableDeclaration",
"scope": 3307,
"src": "4642:11:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 3229,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "4642:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3231,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "4642:11:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3240,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"id": 3232,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3230,
"src": "4660:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"id": 3233,
"name": "_lockingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3227,
"src": "4668:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 3234,
"isConstant": false,
"isInlineArray": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "TupleExpression",
"src": "4659:21:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3236,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4690:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3237,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "4690:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3238,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4704:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3235,
"name": "getIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2977,
"src": "4683:6:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$returns$_t_bool_$_t_uint256_$",
"typeString": "function (uint256[] memory,uint256) pure returns (bool,uint256)"
}
},
"id": 3239,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4683:26:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"src": "4659:50:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3241,
"nodeType": "ExpressionStatement",
"src": "4659:50:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3243,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3230,
"src": "4723:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "69647820646f6573206e6f7420657869737420696e206c6f636b696e67206c697374",
"id": 3244,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4731:36:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_2ed2f78f5853a35f51137d43eaa7b2e053d988ef84429dc2cb2a5e0c62570897",
"typeString": "literal_string \"idx does not exist in locking list\""
},
"value": "idx does not exist in locking list"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_2ed2f78f5853a35f51137d43eaa7b2e053d988ef84429dc2cb2a5e0c62570897",
"typeString": "literal_string \"idx does not exist in locking list\""
}
],
"id": 3242,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "4715:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3245,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4715:53:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3246,
"nodeType": "ExpressionStatement",
"src": "4715:53:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"id": 3254,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 3248,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3167,
"src": "4782:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3249,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4792:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3250,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "4792:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3252,
"indexExpression": {
"argumentTypes": null,
"id": 3251,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "4802:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "4792:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3253,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "agent",
"nodeType": "MemberAccess",
"referencedDeclaration": 2760,
"src": "4792:21:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"src": "4782:31:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "6167656e742063616e63656c20636f6d6d616e642068696d73656c66",
"id": 3255,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4815:30:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_3d3631402915e918d2e4eb091f9fcaa5a85f6d2223b9450d216a70455e217c9e",
"typeString": "literal_string \"agent cancel command himself\""
},
"value": "agent cancel command himself"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_3d3631402915e918d2e4eb091f9fcaa5a85f6d2223b9450d216a70455e217c9e",
"typeString": "literal_string \"agent cancel command himself\""
}
],
"id": 3247,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "4774:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3256,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4774:72:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3257,
"nodeType": "ExpressionStatement",
"src": "4774:72:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3272,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3258,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4884:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3261,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "4884:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3262,
"indexExpression": {
"argumentTypes": null,
"id": 3260,
"name": "_lockingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3227,
"src": "4897:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "4884:25:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3263,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4912:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3264,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "4912:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3271,
"indexExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3269,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "4949:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3265,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4925:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3266,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "4925:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3267,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "4925:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3268,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "4925:23:15",
"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": 3270,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4925:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "4912:40:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "4884:68:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3273,
"nodeType": "ExpressionStatement",
"src": "4884:68:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3285,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3274,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4958:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3277,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "4958:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3278,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "4958:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3283,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5004:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3279,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "4980:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3280,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "4980:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3281,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "4980:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3282,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "4980:23:15",
"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": 3284,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "4980:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "4958:48:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3286,
"nodeType": "ExpressionStatement",
"src": "4958:48:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3292,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "5059:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3287,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "5040:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3290,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "canceled",
"nodeType": "MemberAccess",
"referencedDeclaration": 2783,
"src": "5040:13:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3291,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "5040:18:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) returns (uint256)"
}
},
"id": 3293,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5040:24:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3294,
"nodeType": "ExpressionStatement",
"src": "5040:24:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3302,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3295,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3165,
"src": "5070:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3298,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "5070:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3299,
"indexExpression": {
"argumentTypes": null,
"id": 3297,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3169,
"src": "5080:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5070:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3300,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "5070:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "34",
"id": 3301,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5095:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_4_by_1",
"typeString": "int_const 4"
},
"value": "4"
},
"src": "5070:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3303,
"nodeType": "ExpressionStatement",
"src": "5070:26:15"
},
{
"expression": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 3304,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5110:4:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"functionReturnParameters": 3173,
"id": 3305,
"nodeType": "Return",
"src": "5103:11:15"
}
]
},
"documentation": null,
"id": 3307,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "cancel",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3170,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3165,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3307,
"src": "4005:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3164,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "4005:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3167,
"name": "_agent",
"nodeType": "VariableDeclaration",
"scope": 3307,
"src": "4030:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3166,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "4030:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3169,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 3307,
"src": "4046:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3168,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "4046:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "4004:55:15"
},
"payable": false,
"returnParameters": {
"id": 3173,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3172,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3307,
"src": "4086:4:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 3171,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "4086:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "4085:6:15"
},
"scope": 3760,
"src": "3989:1130:15",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3417,
"nodeType": "Block",
"src": "5230:740:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3320,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5250:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"id": 3321,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3313,
"src": "5256:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3319,
"name": "exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2847,
"src": "5244:5:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_uint256_$returns$_t_bool_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256) view returns (bool)"
}
},
"id": 3322,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5244:17:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "6c6f636b20636f6d6d616e6420646f6573206e6f74206578697374",
"id": 3323,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5263:29:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_e2b5185cc4be90cba22e7103b0d693bf7820d08408953d2d4d0897eefe2cb888",
"typeString": "literal_string \"lock command does not exist\""
},
"value": "lock command does not exist"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_e2b5185cc4be90cba22e7103b0d693bf7820d08408953d2d4d0897eefe2cb888",
"typeString": "literal_string \"lock command does not exist\""
}
],
"id": 3318,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "5236:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3324,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5236:57:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3325,
"nodeType": "ExpressionStatement",
"src": "5236:57:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3333,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3327,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5352:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3328,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "5352:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3330,
"indexExpression": {
"argumentTypes": null,
"id": 3329,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3313,
"src": "5362:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5352:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3331,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "5352:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"hexValue": "32",
"id": 3332,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5378:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_2_by_1",
"typeString": "int_const 2"
},
"value": "2"
},
"src": "5352:27:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "6c6f636b20636f6d6d616e64207374617475732063616e20626520636f6d706c65746564",
"id": 3334,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5387:38:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_0a6a93f63cec5d28fd2dd42d24974cba44975407d393d5cb05d4828ee19d73c7",
"typeString": "literal_string \"lock command status can be completed\""
},
"value": "lock command status can be completed"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_0a6a93f63cec5d28fd2dd42d24974cba44975407d393d5cb05d4828ee19d73c7",
"typeString": "literal_string \"lock command status can be completed\""
}
],
"id": 3326,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "5337:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3335,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5337:94:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3336,
"nodeType": "ExpressionStatement",
"src": "5337:94:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"id": 3344,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 3338,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3311,
"src": "5445:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3339,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5455:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3340,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "5455:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3342,
"indexExpression": {
"argumentTypes": null,
"id": 3341,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3313,
"src": "5465:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5455:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3343,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "agent",
"nodeType": "MemberAccess",
"referencedDeclaration": 2760,
"src": "5455:21:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"src": "5445:31:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "6167656e742063616e63656c20636f6d6d616e642068696d73656c66",
"id": 3345,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5478:30:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_3d3631402915e918d2e4eb091f9fcaa5a85f6d2223b9450d216a70455e217c9e",
"typeString": "literal_string \"agent cancel command himself\""
},
"value": "agent cancel command himself"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_3d3631402915e918d2e4eb091f9fcaa5a85f6d2223b9450d216a70455e217c9e",
"typeString": "literal_string \"agent cancel command himself\""
}
],
"id": 3337,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "5437:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3346,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5437:72:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3347,
"nodeType": "ExpressionStatement",
"src": "5437:72:15"
},
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 3349,
"name": "_lockingIdx",
"nodeType": "VariableDeclaration",
"scope": 3418,
"src": "5544:19:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3348,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "5544:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3350,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "5544:19:15"
},
{
"assignments": [],
"declarations": [
{
"constant": false,
"id": 3352,
"name": "_exist",
"nodeType": "VariableDeclaration",
"scope": 3418,
"src": "5569:11:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 3351,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "5569:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3353,
"initialValue": null,
"nodeType": "VariableDeclarationStatement",
"src": "5569:11:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3362,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"components": [
{
"argumentTypes": null,
"id": 3354,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3352,
"src": "5587:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"id": 3355,
"name": "_lockingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3349,
"src": "5595:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"id": 3356,
"isConstant": false,
"isInlineArray": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "TupleExpression",
"src": "5586:21:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3358,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5617:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3359,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "5617:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3360,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3313,
"src": "5631:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3357,
"name": "getIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 2977,
"src": "5610:6:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_pure$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$returns$_t_bool_$_t_uint256_$",
"typeString": "function (uint256[] memory,uint256) pure returns (bool,uint256)"
}
},
"id": 3361,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5610:26:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$",
"typeString": "tuple(bool,uint256)"
}
},
"src": "5586:50:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3363,
"nodeType": "ExpressionStatement",
"src": "5586:50:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3365,
"name": "_exist",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3352,
"src": "5650:6:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "69647820646f6573206e6f7420657869737420696e206c6f636b696e67206c697374",
"id": 3366,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5658:36:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_2ed2f78f5853a35f51137d43eaa7b2e053d988ef84429dc2cb2a5e0c62570897",
"typeString": "literal_string \"idx does not exist in locking list\""
},
"value": "idx does not exist in locking list"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_2ed2f78f5853a35f51137d43eaa7b2e053d988ef84429dc2cb2a5e0c62570897",
"typeString": "literal_string \"idx does not exist in locking list\""
}
],
"id": 3364,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "5642:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3367,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5642:53:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3368,
"nodeType": "ExpressionStatement",
"src": "5642:53:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3383,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3369,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5733:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3372,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "5733:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3373,
"indexExpression": {
"argumentTypes": null,
"id": 3371,
"name": "_lockingIdx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3349,
"src": "5746:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "5733:25:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3374,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5761:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3375,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "5761:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3382,
"indexExpression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3380,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5798:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3376,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5774:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3377,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "5774:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3378,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "5774:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3379,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "5774:23:15",
"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": 3381,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5774:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5761:40:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "5733:68:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3384,
"nodeType": "ExpressionStatement",
"src": "5733:68:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3396,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3385,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5807:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3388,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "5807:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3389,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "5807:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3394,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5853:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3390,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5829:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3391,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "5829:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3392,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "5829:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3393,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "sub",
"nodeType": "MemberAccess",
"referencedDeclaration": 5611,
"src": "5829:23:15",
"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": 3395,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5829:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "5807:48:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3397,
"nodeType": "ExpressionStatement",
"src": "5807:48:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3403,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3313,
"src": "5910:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3398,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5890:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3401,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "completed",
"nodeType": "MemberAccess",
"referencedDeclaration": 2786,
"src": "5890:14:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3402,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "push",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "5890:19:15",
"typeDescriptions": {
"typeIdentifier": "t_function_arraypush_nonpayable$_t_uint256_$returns$_t_uint256_$",
"typeString": "function (uint256) returns (uint256)"
}
},
"id": 3404,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "5890:25:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3405,
"nodeType": "ExpressionStatement",
"src": "5890:25:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3413,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3406,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3309,
"src": "5921:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3409,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "5921:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3410,
"indexExpression": {
"argumentTypes": null,
"id": 3408,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3313,
"src": "5931:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "5921:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"id": 3411,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"memberName": "status",
"nodeType": "MemberAccess",
"referencedDeclaration": 2768,
"src": "5921:22:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"hexValue": "35",
"id": 3412,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5946:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_5_by_1",
"typeString": "int_const 5"
},
"value": "5"
},
"src": "5921:26:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3414,
"nodeType": "ExpressionStatement",
"src": "5921:26:15"
},
{
"expression": {
"argumentTypes": null,
"hexValue": "74727565",
"id": 3415,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "bool",
"lValueRequested": false,
"nodeType": "Literal",
"src": "5961:4:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"value": "true"
},
"functionReturnParameters": 3317,
"id": 3416,
"nodeType": "Return",
"src": "5954:11:15"
}
]
},
"documentation": null,
"id": 3418,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": false,
"modifiers": [],
"name": "complete",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3314,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3309,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3418,
"src": "5141:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3308,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "5141:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3311,
"name": "_agent",
"nodeType": "VariableDeclaration",
"scope": 3418,
"src": "5166:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3310,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "5166:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3313,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 3418,
"src": "5182:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3312,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "5182:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "5140:55:15"
},
"payable": false,
"returnParameters": {
"id": 3317,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3316,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3418,
"src": "5222:4:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
},
"typeName": {
"id": 3315,
"name": "bool",
"nodeType": "ElementaryTypeName",
"src": "5222:4:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "5221:6:15"
},
"scope": 3760,
"src": "5123:847:15",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3429,
"nodeType": "Block",
"src": "6046:34:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3425,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3420,
"src": "6059:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3426,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "6059:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3427,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6059:16:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 3424,
"id": 3428,
"nodeType": "Return",
"src": "6052:23:15"
}
]
},
"documentation": null,
"id": 3430,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "count",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3421,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3420,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3430,
"src": "5989:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3419,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "5989:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "5988:25:15"
},
"payable": false,
"returnParameters": {
"id": 3424,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3423,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3430,
"src": "6037:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3422,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "6037:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6036:9:15"
},
"scope": 3760,
"src": "5974:106:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3441,
"nodeType": "Block",
"src": "6177:37:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3437,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3432,
"src": "6190:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3438,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "6190:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3439,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6190:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 3436,
"id": 3440,
"nodeType": "Return",
"src": "6183:26:15"
}
]
},
"documentation": null,
"id": 3442,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "countWaiting",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3433,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3432,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3442,
"src": "6106:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3431,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "6106:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6105:25:15"
},
"payable": false,
"returnParameters": {
"id": 3436,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3435,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3442,
"src": "6166:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3434,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "6166:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6165:9:15"
},
"scope": 3760,
"src": "6084:130:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3453,
"nodeType": "Block",
"src": "6311:37:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3449,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3444,
"src": "6324:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3450,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "6324:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3451,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6324:19:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 3448,
"id": 3452,
"nodeType": "Return",
"src": "6317:26:15"
}
]
},
"documentation": null,
"id": 3454,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "countLocking",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3445,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3444,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3454,
"src": "6240:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3443,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "6240:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6239:25:15"
},
"payable": false,
"returnParameters": {
"id": 3448,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3447,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3454,
"src": "6300:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3446,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "6300:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6299:9:15"
},
"scope": 3760,
"src": "6218:130:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3465,
"nodeType": "Block",
"src": "6446:38:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3461,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3456,
"src": "6459:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3462,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "canceled",
"nodeType": "MemberAccess",
"referencedDeclaration": 2783,
"src": "6459:13:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3463,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6459:20:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 3460,
"id": 3464,
"nodeType": "Return",
"src": "6452:27:15"
}
]
},
"documentation": null,
"id": 3466,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "countCanceled",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3457,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3456,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3466,
"src": "6375:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3455,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "6375:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6374:25:15"
},
"payable": false,
"returnParameters": {
"id": 3460,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3459,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3466,
"src": "6435:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3458,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "6435:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6434:9:15"
},
"scope": 3760,
"src": "6352:132:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3477,
"nodeType": "Block",
"src": "6583:39:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3473,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3468,
"src": "6596:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3474,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "completed",
"nodeType": "MemberAccess",
"referencedDeclaration": 2786,
"src": "6596:14:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3475,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6596:21:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 3472,
"id": 3476,
"nodeType": "Return",
"src": "6589:28:15"
}
]
},
"documentation": null,
"id": 3478,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "countCompleted",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3469,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3468,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3478,
"src": "6512:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3467,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "6512:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6511:25:15"
},
"payable": false,
"returnParameters": {
"id": 3472,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3471,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3478,
"src": "6572:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3470,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "6572:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6571:9:15"
},
"scope": 3760,
"src": "6488:134:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3493,
"nodeType": "Block",
"src": "6743:55:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3487,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3480,
"src": "6756:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3488,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "submitterCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2791,
"src": "6756:18:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 3490,
"indexExpression": {
"argumentTypes": null,
"id": 3489,
"name": "_submitter",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3482,
"src": "6775:10:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "6756:30:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3491,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6756:37:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 3486,
"id": 3492,
"nodeType": "Return",
"src": "6749:44:15"
}
]
},
"documentation": null,
"id": 3494,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "countBySubmitter",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3483,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3480,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3494,
"src": "6652:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3479,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "6652:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3482,
"name": "_submitter",
"nodeType": "VariableDeclaration",
"scope": 3494,
"src": "6677:18:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3481,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "6677:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6651:45:15"
},
"payable": false,
"returnParameters": {
"id": 3486,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3485,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3494,
"src": "6732:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3484,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "6732:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6731:9:15"
},
"scope": 3760,
"src": "6626:172:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3509,
"nodeType": "Block",
"src": "6911:47:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3503,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3496,
"src": "6924:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3504,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "agentCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2796,
"src": "6924:14:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 3506,
"indexExpression": {
"argumentTypes": null,
"id": 3505,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3498,
"src": "6939:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "6924:22:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"id": 3507,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "6924:29:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"functionReturnParameters": 3502,
"id": 3508,
"nodeType": "Return",
"src": "6917:36:15"
}
]
},
"documentation": null,
"id": 3510,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "countByAgent",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3499,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3496,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3510,
"src": "6824:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3495,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "6824:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3498,
"name": "_agent",
"nodeType": "VariableDeclaration",
"scope": 3510,
"src": "6849:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3497,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "6849:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6823:41:15"
},
"payable": false,
"returnParameters": {
"id": 3502,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3501,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3510,
"src": "6900:7:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3500,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "6900:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6899:9:15"
},
"scope": 3760,
"src": "6802:156:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3533,
"nodeType": "Block",
"src": "7077:110:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3524,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 3520,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3514,
"src": "7091:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "<",
"rightExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3521,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3512,
"src": "7098:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3522,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "7098:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3523,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "7098:16:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "7091:23:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "696e646578206d75737420736d616c6c207468616e2063757272656e7420636f756e74",
"id": 3525,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "7116:37:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_ced05a9863658d26be4f7cbaeffebfa53821dabbe1077d21241580b1e9ea74c5",
"typeString": "literal_string \"index must small than current count\""
},
"value": "index must small than current count"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_ced05a9863658d26be4f7cbaeffebfa53821dabbe1077d21241580b1e9ea74c5",
"typeString": "literal_string \"index must small than current count\""
}
],
"id": 3519,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "7083:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3526,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "7083:71:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3527,
"nodeType": "ExpressionStatement",
"src": "7083:71:15"
},
{
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3528,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3512,
"src": "7167:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3529,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "7167:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3531,
"indexExpression": {
"argumentTypes": null,
"id": 3530,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3514,
"src": "7177:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "7167:15:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"functionReturnParameters": 3518,
"id": 3532,
"nodeType": "Return",
"src": "7160:22:15"
}
]
},
"documentation": null,
"id": 3534,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getByIdx",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3515,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3512,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3534,
"src": "6980:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3511,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "6980:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3514,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 3534,
"src": "7005:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3513,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7005:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "6979:39:15"
},
"payable": false,
"returnParameters": {
"id": 3518,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3517,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3534,
"src": "7054:19:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_memory_ptr",
"typeString": "struct CommandList.element"
},
"typeName": {
"contractScope": null,
"id": 3516,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "7054:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7053:21:15"
},
"scope": 3760,
"src": "6962:225:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3549,
"nodeType": "Block",
"src": "7311:48:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3544,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3536,
"src": "7324:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3545,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "submitterCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2791,
"src": "7324:18:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 3547,
"indexExpression": {
"argumentTypes": null,
"id": 3546,
"name": "_submitter",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3538,
"src": "7343:10:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "7324:30:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"functionReturnParameters": 3543,
"id": 3548,
"nodeType": "Return",
"src": "7317:37:15"
}
]
},
"documentation": null,
"id": 3550,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getIdxBySubmitter",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3539,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3536,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3550,
"src": "7218:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3535,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "7218:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3538,
"name": "_submitter",
"nodeType": "VariableDeclaration",
"scope": 3550,
"src": "7243:18:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3537,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "7243:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7217:45:15"
},
"payable": false,
"returnParameters": {
"id": 3543,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3542,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3550,
"src": "7298:9:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 3540,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7298:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3541,
"length": null,
"nodeType": "ArrayTypeName",
"src": "7298:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7297:11:15"
},
"scope": 3760,
"src": "7191:168:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3565,
"nodeType": "Block",
"src": "7475:40:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3560,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3552,
"src": "7488:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3561,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "agentCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2796,
"src": "7488:14:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 3563,
"indexExpression": {
"argumentTypes": null,
"id": 3562,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3554,
"src": "7503:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "7488:22:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"functionReturnParameters": 3559,
"id": 3564,
"nodeType": "Return",
"src": "7481:29:15"
}
]
},
"documentation": null,
"id": 3566,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getIdxByAgent",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3555,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3552,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3566,
"src": "7386:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3551,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "7386:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3554,
"name": "_agent",
"nodeType": "VariableDeclaration",
"scope": 3566,
"src": "7411:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3553,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "7411:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7385:41:15"
},
"payable": false,
"returnParameters": {
"id": 3559,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3558,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3566,
"src": "7462:9:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 3556,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7462:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3557,
"length": null,
"nodeType": "ArrayTypeName",
"src": "7462:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7461:11:15"
},
"scope": 3760,
"src": "7363:152:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3577,
"nodeType": "Block",
"src": "7615:30:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3574,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3568,
"src": "7628:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3575,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "waiting",
"nodeType": "MemberAccess",
"referencedDeclaration": 2777,
"src": "7628:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"functionReturnParameters": 3573,
"id": 3576,
"nodeType": "Return",
"src": "7621:19:15"
}
]
},
"documentation": null,
"id": 3578,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getWaitingIdx",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3569,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3568,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3578,
"src": "7542:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3567,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "7542:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7541:25:15"
},
"payable": false,
"returnParameters": {
"id": 3573,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3572,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3578,
"src": "7602:9:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 3570,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7602:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3571,
"length": null,
"nodeType": "ArrayTypeName",
"src": "7602:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7601:11:15"
},
"scope": 3760,
"src": "7519:126:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3589,
"nodeType": "Block",
"src": "7745:30:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3586,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3580,
"src": "7758:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3587,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "locking",
"nodeType": "MemberAccess",
"referencedDeclaration": 2780,
"src": "7758:12:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
"functionReturnParameters": 3585,
"id": 3588,
"nodeType": "Return",
"src": "7751:19:15"
}
]
},
"documentation": null,
"id": 3590,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getLockingIdx",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3581,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3580,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3590,
"src": "7672:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3579,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "7672:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7671:25:15"
},
"payable": false,
"returnParameters": {
"id": 3585,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3584,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3590,
"src": "7732:9:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 3582,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7732:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3583,
"length": null,
"nodeType": "ArrayTypeName",
"src": "7732:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7731:11:15"
},
"scope": 3760,
"src": "7649:126:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3666,
"nodeType": "Block",
"src": "7944:354:15",
"statements": [
{
"assignments": [
3606
],
"declarations": [
{
"constant": false,
"id": 3606,
"name": "_idx",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "7950:12:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3605,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7950:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3608,
"initialValue": {
"argumentTypes": null,
"hexValue": "30",
"id": 3607,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "7965:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"nodeType": "VariableDeclarationStatement",
"src": "7950:16:15"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3612,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 3610,
"name": "_count",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3599,
"src": "7980:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": ">",
"rightExpression": {
"argumentTypes": null,
"hexValue": "30",
"id": 3611,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "7989:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_0_by_1",
"typeString": "int_const 0"
},
"value": "0"
},
"src": "7980:10:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
{
"argumentTypes": null,
"hexValue": "72657475726e206e756d626572206d75737420626967676572207468616e2030",
"id": 3613,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "string",
"lValueRequested": false,
"nodeType": "Literal",
"src": "7992:34:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_stringliteral_77e7c3b7b2e897d6d61c9adadd03e672f46f1501428d9e7f585ea1fd64517a2b",
"typeString": "literal_string \"return number must bigger than 0\""
},
"value": "return number must bigger than 0"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_bool",
"typeString": "bool"
},
{
"typeIdentifier": "t_stringliteral_77e7c3b7b2e897d6d61c9adadd03e672f46f1501428d9e7f585ea1fd64517a2b",
"typeString": "literal_string \"return number must bigger than 0\""
}
],
"id": 3609,
"name": "require",
"nodeType": "Identifier",
"overloadedDeclarations": [
9044,
9045
],
"referencedDeclaration": 9045,
"src": "7972:7:15",
"typeDescriptions": {
"typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$",
"typeString": "function (bool,string memory) pure"
}
},
"id": 3614,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "7972:55:15",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 3615,
"nodeType": "ExpressionStatement",
"src": "7972:55:15"
},
{
"assignments": [
3620
],
"declarations": [
{
"constant": false,
"id": 3620,
"name": "res",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "8033:32:15",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element[]"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 3618,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "8033:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 3619,
"length": null,
"nodeType": "ArrayTypeName",
"src": "8033:21:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3626,
"initialValue": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3624,
"name": "_count",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3599,
"src": "8094:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3623,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "NewExpression",
"src": "8068:25:15",
"typeDescriptions": {
"typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_$",
"typeString": "function (uint256) pure returns (struct CommandList.element memory[] memory)"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 3621,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "8072:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 3622,
"length": null,
"nodeType": "ArrayTypeName",
"src": "8072:21:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
}
},
"id": 3625,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8068:33:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory",
"typeString": "struct CommandList.element memory[] memory"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "8033:68:15"
},
{
"body": {
"id": 3662,
"nodeType": "Block",
"src": "8154:123:15",
"statements": [
{
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3640,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 3638,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3606,
"src": "8166:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "==",
"rightExpression": {
"argumentTypes": null,
"id": 3639,
"name": "_count",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3599,
"src": "8174:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "8166:14:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"falseBody": null,
"id": 3643,
"nodeType": "IfStatement",
"src": "8162:44:15",
"trueBody": {
"id": 3642,
"nodeType": "Block",
"src": "8182:24:15",
"statements": [
{
"id": 3641,
"nodeType": "Break",
"src": "8192:5:15"
}
]
}
},
{
"expression": {
"argumentTypes": null,
"id": 3653,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 3644,
"name": "res",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3620,
"src": "8214:3:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element memory[] memory"
}
},
"id": 3646,
"indexExpression": {
"argumentTypes": null,
"id": 3645,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3606,
"src": "8218:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": true,
"nodeType": "IndexAccess",
"src": "8214:9:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_memory",
"typeString": "struct CommandList.element memory"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3647,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3592,
"src": "8226:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3648,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "list",
"nodeType": "MemberAccess",
"referencedDeclaration": 2774,
"src": "8226:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage",
"typeString": "struct CommandList.element storage ref[] storage ref"
}
},
"id": 3652,
"indexExpression": {
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"id": 3649,
"name": "_arr",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3595,
"src": "8236:4:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[] memory"
}
},
"id": 3651,
"indexExpression": {
"argumentTypes": null,
"id": 3650,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3628,
"src": "8241:1:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "8236:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "8226:18:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage",
"typeString": "struct CommandList.element storage ref"
}
},
"src": "8214:30:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_memory",
"typeString": "struct CommandList.element memory"
}
},
"id": 3654,
"nodeType": "ExpressionStatement",
"src": "8214:30:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3660,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 3655,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3606,
"src": "8252:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"hexValue": "31",
"id": 3658,
"isConstant": false,
"isLValue": false,
"isPure": true,
"kind": "number",
"lValueRequested": false,
"nodeType": "Literal",
"src": "8268:1:15",
"subdenomination": null,
"typeDescriptions": {
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
},
"value": "1"
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_rational_1_by_1",
"typeString": "int_const 1"
}
],
"expression": {
"argumentTypes": null,
"id": 3656,
"name": "_idx",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3606,
"src": "8259:4:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3657,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "add",
"nodeType": "MemberAccess",
"referencedDeclaration": 5635,
"src": "8259:8:15",
"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": 3659,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8259:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "8252:18:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3661,
"nodeType": "ExpressionStatement",
"src": "8252:18:15"
}
]
},
"condition": {
"argumentTypes": null,
"commonType": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"id": 3634,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftExpression": {
"argumentTypes": null,
"id": 3631,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3628,
"src": "8132:1:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "BinaryOperation",
"operator": "<",
"rightExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3632,
"name": "_arr",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3595,
"src": "8136:4:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[] memory"
}
},
"id": 3633,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"memberName": "length",
"nodeType": "MemberAccess",
"referencedDeclaration": null,
"src": "8136:11:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"src": "8132:15:15",
"typeDescriptions": {
"typeIdentifier": "t_bool",
"typeString": "bool"
}
},
"id": 3663,
"initializationExpression": {
"assignments": [
3628
],
"declarations": [
{
"constant": false,
"id": 3628,
"name": "i",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "8113:9:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3627,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "8113:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"id": 3630,
"initialValue": {
"argumentTypes": null,
"id": 3629,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3597,
"src": "8125:5:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"nodeType": "VariableDeclarationStatement",
"src": "8113:17:15"
},
"loopExpression": {
"expression": {
"argumentTypes": null,
"id": 3636,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "UnaryOperation",
"operator": "++",
"prefix": false,
"src": "8149:3:15",
"subExpression": {
"argumentTypes": null,
"id": 3635,
"name": "i",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3628,
"src": "8149:1:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3637,
"nodeType": "ExpressionStatement",
"src": "8149:3:15"
},
"nodeType": "ForStatement",
"src": "8108:169:15"
},
{
"expression": {
"argumentTypes": null,
"id": 3664,
"name": "res",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3620,
"src": "8290:3:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element memory[] memory"
}
},
"functionReturnParameters": 3604,
"id": 3665,
"nodeType": "Return",
"src": "8283:10:15"
}
]
},
"documentation": null,
"id": 3667,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getElement",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3600,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3592,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "7804:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3591,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "7804:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3595,
"name": "_arr",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "7833:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
"typeString": "uint256[]"
},
"typeName": {
"baseType": {
"id": 3593,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7833:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"id": 3594,
"length": null,
"nodeType": "ArrayTypeName",
"src": "7833:9:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
"typeString": "uint256[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3597,
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "7853:13:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3596,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7853:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3599,
"name": "_count",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "7872:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3598,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "7872:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7798:92:15"
},
"payable": false,
"returnParameters": {
"id": 3604,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3603,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3667,
"src": "7914:21:15",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element[]"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 3601,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "7914:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 3602,
"length": null,
"nodeType": "ArrayTypeName",
"src": "7914:21:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "7913:30:15"
},
"scope": 3760,
"src": "7779:519:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3691,
"nodeType": "Block",
"src": "8475:81:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3682,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3669,
"src": "8499:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3683,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3669,
"src": "8505:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3684,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "submitterCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2791,
"src": "8505:18:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 3686,
"indexExpression": {
"argumentTypes": null,
"id": 3685,
"name": "_submitter",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3671,
"src": "8524:10:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "8505:30:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3687,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3673,
"src": "8537:5:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 3688,
"name": "_count",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3675,
"src": "8544:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3681,
"name": "getElement",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3667,
"src": "8488:10:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256[] memory,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
}
},
"id": 3689,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8488:63:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element memory[] memory"
}
},
"functionReturnParameters": 3680,
"id": 3690,
"nodeType": "Return",
"src": "8481:70:15"
}
]
},
"documentation": null,
"id": 3692,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getBySubmitter",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3676,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3669,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3692,
"src": "8331:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3668,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "8331:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3671,
"name": "_submitter",
"nodeType": "VariableDeclaration",
"scope": 3692,
"src": "8360:18:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3670,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "8360:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3673,
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 3692,
"src": "8384:13:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3672,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "8384:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3675,
"name": "_count",
"nodeType": "VariableDeclaration",
"scope": 3692,
"src": "8403:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3674,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "8403:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8325:96:15"
},
"payable": false,
"returnParameters": {
"id": 3680,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3679,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3692,
"src": "8445:21:15",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element[]"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 3677,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "8445:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 3678,
"length": null,
"nodeType": "ArrayTypeName",
"src": "8445:21:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8444:30:15"
},
"scope": 3760,
"src": "8302:254:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3716,
"nodeType": "Block",
"src": "8725:73:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3707,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3694,
"src": "8749:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"baseExpression": {
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3708,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3694,
"src": "8755:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3709,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "agentCmds",
"nodeType": "MemberAccess",
"referencedDeclaration": 2796,
"src": "8755:14:15",
"typeDescriptions": {
"typeIdentifier": "t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$",
"typeString": "mapping(address => uint256[] storage ref)"
}
},
"id": 3711,
"indexExpression": {
"argumentTypes": null,
"id": 3710,
"name": "_agent",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3696,
"src": "8770:6:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"nodeType": "IndexAccess",
"src": "8755:22:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3712,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3698,
"src": "8779:5:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 3713,
"name": "_count",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3700,
"src": "8786:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3706,
"name": "getElement",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3667,
"src": "8738:10:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256[] memory,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
}
},
"id": 3714,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8738:55:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element memory[] memory"
}
},
"functionReturnParameters": 3705,
"id": 3715,
"nodeType": "Return",
"src": "8731:62:15"
}
]
},
"documentation": null,
"id": 3717,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getByAgent",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3701,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3694,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3717,
"src": "8585:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3693,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "8585:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3696,
"name": "_agent",
"nodeType": "VariableDeclaration",
"scope": 3717,
"src": "8614:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 3695,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "8614:7:15",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3698,
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 3717,
"src": "8634:13:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3697,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "8634:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3700,
"name": "_count",
"nodeType": "VariableDeclaration",
"scope": 3717,
"src": "8653:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3699,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "8653:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8579:92:15"
},
"payable": false,
"returnParameters": {
"id": 3705,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3704,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3717,
"src": "8695:21:15",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element[]"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 3702,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "8695:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 3703,
"length": null,
"nodeType": "ArrayTypeName",
"src": "8695:21:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8694:30:15"
},
"scope": 3760,
"src": "8560:238:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3737,
"nodeType": "Block",
"src": "8948:64:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3730,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3719,
"src": "8972:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3731,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3719,
"src": "8978:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3732,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "canceled",
"nodeType": "MemberAccess",
"referencedDeclaration": 2783,
"src": "8978:13:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3733,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3721,
"src": "8993:5:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 3734,
"name": "_count",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3723,
"src": "9000:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3729,
"name": "getElement",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3667,
"src": "8961:10:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256[] memory,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
}
},
"id": 3735,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "8961:46:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element memory[] memory"
}
},
"functionReturnParameters": 3728,
"id": 3736,
"nodeType": "Return",
"src": "8954:53:15"
}
]
},
"documentation": null,
"id": 3738,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getByCanceled",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3724,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3719,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3738,
"src": "8825:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3718,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "8825:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3721,
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 3738,
"src": "8850:13:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3720,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "8850:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3723,
"name": "_count",
"nodeType": "VariableDeclaration",
"scope": 3738,
"src": "8865:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3722,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "8865:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8824:56:15"
},
"payable": false,
"returnParameters": {
"id": 3728,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3727,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3738,
"src": "8916:21:15",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element[]"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 3725,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "8916:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 3726,
"length": null,
"nodeType": "ArrayTypeName",
"src": "8916:21:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "8915:30:15"
},
"scope": 3760,
"src": "8802:210:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
},
{
"body": {
"id": 3758,
"nodeType": "Block",
"src": "9165:65:15",
"statements": [
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 3751,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3740,
"src": "9189:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
{
"argumentTypes": null,
"expression": {
"argumentTypes": null,
"id": 3752,
"name": "self",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3740,
"src": "9195:4:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
}
},
"id": 3753,
"isConstant": false,
"isLValue": true,
"isPure": false,
"lValueRequested": false,
"memberName": "completed",
"nodeType": "MemberAccess",
"referencedDeclaration": 2786,
"src": "9195:14:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
}
},
{
"argumentTypes": null,
"id": 3754,
"name": "_from",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3742,
"src": "9211:5:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 3755,
"name": "_count",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3744,
"src": "9218:6:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap storage pointer"
},
{
"typeIdentifier": "t_array$_t_uint256_$dyn_storage",
"typeString": "uint256[] storage ref"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 3750,
"name": "getElement",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 3667,
"src": "9178:10:15",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_array$_t_uint256_$dyn_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$",
"typeString": "function (struct CommandList.commandMap storage pointer,uint256[] memory,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
}
},
"id": 3756,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "9178:47:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element memory[] memory"
}
},
"functionReturnParameters": 3749,
"id": 3757,
"nodeType": "Return",
"src": "9171:54:15"
}
]
},
"documentation": null,
"id": 3759,
"implemented": true,
"isConstructor": false,
"isDeclaredConst": true,
"modifiers": [],
"name": "getByCompleted",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 3745,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3740,
"name": "self",
"nodeType": "VariableDeclaration",
"scope": 3759,
"src": "9045:23:15",
"stateVariable": false,
"storageLocation": "storage",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
},
"typeName": {
"contractScope": null,
"id": 3739,
"name": "commandMap",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2797,
"src": "9045:10:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
"typeString": "struct CommandList.commandMap"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3742,
"name": "_from",
"nodeType": "VariableDeclaration",
"scope": 3759,
"src": "9074:13:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3741,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "9074:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 3744,
"name": "_count",
"nodeType": "VariableDeclaration",
"scope": 3759,
"src": "9093:14:15",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 3743,
"name": "uint256",
"nodeType": "ElementaryTypeName",
"src": "9093:7:15",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "9039:72:15"
},
"payable": false,
"returnParameters": {
"id": 3749,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 3748,
"name": "",
"nodeType": "VariableDeclaration",
"scope": 3759,
"src": "9135:21:15",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
"typeString": "struct CommandList.element[]"
},
"typeName": {
"baseType": {
"contractScope": null,
"id": 3746,
"name": "CommandList.element",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 2771,
"src": "9135:19:15",
"typeDescriptions": {
"typeIdentifier": "t_struct$_element_$2771_storage_ptr",
"typeString": "struct CommandList.element"
}
},
"id": 3747,
"length": null,
"nodeType": "ArrayTypeName",
"src": "9135:21:15",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
"typeString": "struct CommandList.element[]"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "9134:30:15"
},
"scope": 3760,
"src": "9016:214:15",
"stateMutability": "view",
"superFunction": null,
"visibility": "internal"
}
],
"scope": 3761,
"src": "126:9106:15"
}
],
"src": "0:9233:15"
},
"compiler": {
"name": "solc",
"version": "0.4.24+commit.e67f0147.Emscripten.clang"
},
"networks": {},
"schemaVersion": "3.0.16",
"updatedAt": "2021-03-06T09:30:00.985Z",
"devdoc": {
"methods": {}
},
"userdoc": {
"methods": {}
}
}