{
  "contractName": "MockCommandList",
  "abi": [
    {
      "constant": false,
      "inputs": [
        {
          "name": "_fromChain",
          "type": "uint256"
        },
        {
          "name": "_toChain",
          "type": "uint256"
        },
        {
          "name": "_verbs",
          "type": "uint256"
        },
        {
          "name": "_payloadHash",
          "type": "bytes32"
        }
      ],
      "name": "insert",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_idx",
          "type": "uint256"
        }
      ],
      "name": "lock",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_idx",
          "type": "uint256"
        }
      ],
      "name": "cancel",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_idx",
          "type": "uint256"
        }
      ],
      "name": "complete",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "count",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "countWaiting",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "countLocking",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "countCanceled",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "countCompleted",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_submitter",
          "type": "address"
        }
      ],
      "name": "countBySubmitter",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_agent",
          "type": "address"
        }
      ],
      "name": "countByAgent",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_idx",
          "type": "uint256"
        }
      ],
      "name": "getByIdx",
      "outputs": [
        {
          "components": [
            {
              "name": "submitter",
              "type": "address"
            },
            {
              "name": "agent",
              "type": "address"
            },
            {
              "name": "fromChain",
              "type": "uint256"
            },
            {
              "name": "toChain",
              "type": "uint256"
            },
            {
              "name": "verbs",
              "type": "uint256"
            },
            {
              "name": "status",
              "type": "uint256"
            },
            {
              "name": "payloadHash",
              "type": "bytes32"
            }
          ],
          "name": "",
          "type": "tuple"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_submitter",
          "type": "address"
        }
      ],
      "name": "getIdxBySubmitter",
      "outputs": [
        {
          "name": "",
          "type": "uint256[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_agent",
          "type": "address"
        }
      ],
      "name": "getIdxByAgent",
      "outputs": [
        {
          "name": "",
          "type": "uint256[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getWaitingIdx",
      "outputs": [
        {
          "name": "",
          "type": "uint256[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getLockingIdx",
      "outputs": [
        {
          "name": "",
          "type": "uint256[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_submitter",
          "type": "address"
        },
        {
          "name": "_from",
          "type": "uint256"
        },
        {
          "name": "_count",
          "type": "uint256"
        }
      ],
      "name": "getBySubmitter",
      "outputs": [
        {
          "components": [
            {
              "name": "submitter",
              "type": "address"
            },
            {
              "name": "agent",
              "type": "address"
            },
            {
              "name": "fromChain",
              "type": "uint256"
            },
            {
              "name": "toChain",
              "type": "uint256"
            },
            {
              "name": "verbs",
              "type": "uint256"
            },
            {
              "name": "status",
              "type": "uint256"
            },
            {
              "name": "payloadHash",
              "type": "bytes32"
            }
          ],
          "name": "",
          "type": "tuple[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_agent",
          "type": "address"
        },
        {
          "name": "_from",
          "type": "uint256"
        },
        {
          "name": "_count",
          "type": "uint256"
        }
      ],
      "name": "getByAgent",
      "outputs": [
        {
          "components": [
            {
              "name": "submitter",
              "type": "address"
            },
            {
              "name": "agent",
              "type": "address"
            },
            {
              "name": "fromChain",
              "type": "uint256"
            },
            {
              "name": "toChain",
              "type": "uint256"
            },
            {
              "name": "verbs",
              "type": "uint256"
            },
            {
              "name": "status",
              "type": "uint256"
            },
            {
              "name": "payloadHash",
              "type": "bytes32"
            }
          ],
          "name": "",
          "type": "tuple[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_from",
          "type": "uint256"
        },
        {
          "name": "_count",
          "type": "uint256"
        }
      ],
      "name": "getByCanceled",
      "outputs": [
        {
          "components": [
            {
              "name": "submitter",
              "type": "address"
            },
            {
              "name": "agent",
              "type": "address"
            },
            {
              "name": "fromChain",
              "type": "uint256"
            },
            {
              "name": "toChain",
              "type": "uint256"
            },
            {
              "name": "verbs",
              "type": "uint256"
            },
            {
              "name": "status",
              "type": "uint256"
            },
            {
              "name": "payloadHash",
              "type": "bytes32"
            }
          ],
          "name": "",
          "type": "tuple[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_from",
          "type": "uint256"
        },
        {
          "name": "_count",
          "type": "uint256"
        }
      ],
      "name": "getByCompleted",
      "outputs": [
        {
          "components": [
            {
              "name": "submitter",
              "type": "address"
            },
            {
              "name": "agent",
              "type": "address"
            },
            {
              "name": "fromChain",
              "type": "uint256"
            },
            {
              "name": "toChain",
              "type": "uint256"
            },
            {
              "name": "verbs",
              "type": "uint256"
            },
            {
              "name": "status",
              "type": "uint256"
            },
            {
              "name": "payloadHash",
              "type": "bytes32"
            }
          ],
          "name": "",
          "type": "tuple[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "metadata": "{\"compiler\":{\"version\":\"0.4.24+commit.e67f0147\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[],\"name\":\"count\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getWaitingIdx\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getLockingIdx\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"countWaiting\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"countCompleted\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_submitter\",\"type\":\"address\"}],\"name\":\"getIdxBySubmitter\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_idx\",\"type\":\"uint256\"}],\"name\":\"cancel\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"countCanceled\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_fromChain\",\"type\":\"uint256\"},{\"name\":\"_toChain\",\"type\":\"uint256\"},{\"name\":\"_verbs\",\"type\":\"uint256\"},{\"name\":\"_payloadHash\",\"type\":\"bytes32\"}],\"name\":\"insert\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_agent\",\"type\":\"address\"},{\"name\":\"_from\",\"type\":\"uint256\"},{\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"getByAgent\",\"outputs\":[{\"components\":[{\"name\":\"submitter\",\"type\":\"address\"},{\"name\":\"agent\",\"type\":\"address\"},{\"name\":\"fromChain\",\"type\":\"uint256\"},{\"name\":\"toChain\",\"type\":\"uint256\"},{\"name\":\"verbs\",\"type\":\"uint256\"},{\"name\":\"status\",\"type\":\"uint256\"},{\"name\":\"payloadHash\",\"type\":\"bytes32\"}],\"name\":\"\",\"type\":\"tuple[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_submitter\",\"type\":\"address\"},{\"name\":\"_from\",\"type\":\"uint256\"},{\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"getBySubmitter\",\"outputs\":[{\"components\":[{\"name\":\"submitter\",\"type\":\"address\"},{\"name\":\"agent\",\"type\":\"address\"},{\"name\":\"fromChain\",\"type\":\"uint256\"},{\"name\":\"toChain\",\"type\":\"uint256\"},{\"name\":\"verbs\",\"type\":\"uint256\"},{\"name\":\"status\",\"type\":\"uint256\"},{\"name\":\"payloadHash\",\"type\":\"bytes32\"}],\"name\":\"\",\"type\":\"tuple[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"countLocking\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_from\",\"type\":\"uint256\"},{\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"getByCompleted\",\"outputs\":[{\"components\":[{\"name\":\"submitter\",\"type\":\"address\"},{\"name\":\"agent\",\"type\":\"address\"},{\"name\":\"fromChain\",\"type\":\"uint256\"},{\"name\":\"toChain\",\"type\":\"uint256\"},{\"name\":\"verbs\",\"type\":\"uint256\"},{\"name\":\"status\",\"type\":\"uint256\"},{\"name\":\"payloadHash\",\"type\":\"bytes32\"}],\"name\":\"\",\"type\":\"tuple[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_idx\",\"type\":\"uint256\"}],\"name\":\"complete\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_submitter\",\"type\":\"address\"}],\"name\":\"countBySubmitter\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_idx\",\"type\":\"uint256\"}],\"name\":\"getByIdx\",\"outputs\":[{\"components\":[{\"name\":\"submitter\",\"type\":\"address\"},{\"name\":\"agent\",\"type\":\"address\"},{\"name\":\"fromChain\",\"type\":\"uint256\"},{\"name\":\"toChain\",\"type\":\"uint256\"},{\"name\":\"verbs\",\"type\":\"uint256\"},{\"name\":\"status\",\"type\":\"uint256\"},{\"name\":\"payloadHash\",\"type\":\"bytes32\"}],\"name\":\"\",\"type\":\"tuple\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_agent\",\"type\":\"address\"}],\"name\":\"countByAgent\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_idx\",\"type\":\"uint256\"}],\"name\":\"lock\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_from\",\"type\":\"uint256\"},{\"name\":\"_count\",\"type\":\"uint256\"}],\"name\":\"getByCanceled\",\"outputs\":[{\"components\":[{\"name\":\"submitter\",\"type\":\"address\"},{\"name\":\"agent\",\"type\":\"address\"},{\"name\":\"fromChain\",\"type\":\"uint256\"},{\"name\":\"toChain\",\"type\":\"uint256\"},{\"name\":\"verbs\",\"type\":\"uint256\"},{\"name\":\"status\",\"type\":\"uint256\"},{\"name\":\"payloadHash\",\"type\":\"bytes32\"}],\"name\":\"\",\"type\":\"tuple[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_agent\",\"type\":\"address\"}],\"name\":\"getIdxByAgent\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256[]\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/mock/MockCommandList.sol\":\"MockCommandList\"},\"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\"]},\"/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/mock/MockCommandList.sol\":{\"keccak256\":\"0x3ede4edaaea952cb0d8e677faecd7cdcad6306248e82c46bdd3077ff9959bb0f\",\"urls\":[\"bzzr://6b7fb1483c6ec4784605ef9ee1e513d239bbdc66641f1f32854822ddbb3362c1\"]}},\"version\":1}",
  "bytecode": "0x608060405234801561001057600080fd5b50611c21806100206000396000f3006080604052600436106101115763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306661abd81146101165780630c8dc78c1461014157806310bf49fe14610163578063188f320b1461017857806318dffd931461018d5780633b99b677146101a257806340e58ee5146101c2578063477a20e8146101ef57806356c8121c1461020457806356d05d2814610224578063790e3f2b1461025157806383b100521461027157806394ab065814610286578063971d852f146102a65780639ad248a9146102c65780639f8ddccc146102e6578063d1d7d5e614610313578063dd46706414610333578063ecd316f514610353578063fe9cc3fa14610373575b600080fd5b34801561012257600080fd5b5061012b610393565b6040516101389190611bbe565b60405180910390f35b34801561014d57600080fd5b506101566103a5565b6040516101389190611af1565b34801561016f57600080fd5b506101566103b1565b34801561018457600080fd5b5061012b6103bd565b34801561019957600080fd5b5061012b6103c9565b3480156101ae57600080fd5b506101566101bd3660046115d0565b6103d5565b3480156101ce57600080fd5b506101e26101dd36600461163b565b6103ee565b6040516101389190611b02565b3480156101fb57600080fd5b5061012b610401565b34801561021057600080fd5b5061012b61021f366004611693565b61040d565b34801561023057600080fd5b5061024461023f3660046115ee565b61042c565b6040516101389190611ae0565b34801561025d57600080fd5b5061024461026c3660046115ee565b610449565b34801561027d57600080fd5b5061012b61045e565b34801561029257600080fd5b506102446102a1366004611659565b61046a565b3480156102b257600080fd5b506101e26102c136600461163b565b610485565b3480156102d257600080fd5b5061012b6102e13660046115d0565b610498565b3480156102f257600080fd5b5061030661030136600461163b565b6104aa565b6040516101389190611bb0565b34801561031f57600080fd5b5061012b61032e3660046115d0565b6104c3565b34801561033f57600080fd5b506101e261034e36600461163b565b6104d5565b34801561035f57600080fd5b5061024461036e366004611659565b6104e8565b34801561037f57600080fd5b5061015661038e3660046115d0565b6104fc565b600061039f600061050f565b90505b90565b606061039f6000610513565b606061039f600061056f565b600061039f60006105c9565b600061039f60006105d0565b60606103e860008363ffffffff6105d716565b92915050565b60006103e881338463ffffffff61064616565b600061039f6000610901565b600061042381338787878763ffffffff61090816565b95945050505050565b6060610441600085858563ffffffff610afa16565b949350505050565b6060610441600085858563ffffffff610b7d16565b600061039f6000610bfe565b606061047e6000848463ffffffff610c0516565b9392505050565b60006103e881338463ffffffff610c6316565b60006103e8818363ffffffff610e3e16565b6104b2611535565b6103e860008363ffffffff610e5d16565b60006103e8818363ffffffff610f0916565b60006103e881338463ffffffff610f2816565b606061047e6000848463ffffffff61110716565b60606103e860008363ffffffff61116516565b5490565b60608160010180548060200260200160405190810160405280929190818152602001828054801561056357602002820191906000526020600020905b81548152602001906001019080831161054f575b50505050509050919050565b606081600201805480602002602001604051908101604052809291908181526020018280548015610563576020028201919060005260206000209081548152602001906001019080831161054f5750505050509050919050565b6001015490565b6004015490565b600160a060020a038116600090815260058301602090815260409182902080548351818402810184019094528084526060939283018282801561063957602002820191906000526020600020905b815481526020019060010190808311610625575b5050505050905092915050565b600080600061065586856111d2565b151561067f5760405160e560020a62461bcd02815260040161067690611ba0565b60405180910390fd5b855486908590811061068d57fe5b9060005260206000209060070201600501546004141580156106cf575085548690859081106106b857fe5b906000526020600020906007020160050154600514155b15156106f05760405160e560020a62461bcd02815260040161067690611b40565b85548690859081106106fe57fe5b9060005260206000209060070201600501546001141561077557855486908590811061072657fe5b6000918252602090912060079091020154600160a060020a038681169116146107645760405160e560020a62461bcd02815260040161067690611b80565b61076e86856111ee565b92506108f8565b6107d1866002018054806020026020016040519081016040528092919081815260200182805480156107c657602002820191906000526020600020905b8154815260200190600101908083116107b2575b50505050508561132b565b925090508015156107f75760405160e560020a62461bcd02815260040161067690611b30565b855486908590811061080557fe5b6000918252602090912060016007909202010154600160a060020a038681169116146108465760405160e560020a62461bcd02815260040161067690611b50565b60028601805461085d90600163ffffffff6113c816565b8154811061086757fe5b9060005260206000200154866002018381548110151561088357fe5b60009182526020909120015560028601546108a590600163ffffffff6113c816565b6108b26002880182611571565b50600386018054600181018255600091825260209091200184905585546004908790869081106108de57fe5b906000526020600020906007020160050181905550600192505b50509392505050565b6003015490565b6000610912611535565b6000848015806109225750600181145b8061092d5750600281145b151561094e5760405160e560020a62461bcd02815260040161067690611b90565b60e0604051908101604052808a600160a060020a031681526020016000600160a060020a0316815260200189815260200188815260200187815260200160018152602001866000191681525092508960000180549050915089600001839080600181540180825580915050906001820390600052602060002090600702016000909192909190915060008201518160000160006101000a815481600160a060020a030219169083600160a060020a0316021790555060208201518160010160006101000a815481600160a060020a030219169083600160a060020a0316021790555060408201518160020155606082015181600301556080820151816004015560a0820151816005015560c08201518160060190600019169055505050896001018290806001815401808255809150509060018203906000526020600020016000909192909190915055508960050160008a600160a060020a0316600160a060020a031681526020019081526020016000208290806001815401808255809150509060018203906000526020600020016000909192909190915055508193505050509695505050505050565b60606104238586600601600087600160a060020a0316600160a060020a03168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610b7157602002820191906000526020600020905b815481526020019060010190808311610b5d575b505050505085856113da565b60606104238586600501600087600160a060020a0316600160a060020a03168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610b715760200282019190600052602060002090815481526020019060010190808311610b5d57505050505085856113da565b6002015490565b60606104418485600401805480602002602001604051908101604052809291908181526020018280548015610b715760200282019190600052602060002090815481526020019060010190808311610b5d57505050505085856113da565b6000806000610c7286856111d2565b1515610c935760405160e560020a62461bcd02815260040161067690611ba0565b8554869085908110610ca157fe5b9060005260206000209060070201600501546002141515610cd75760405160e560020a62461bcd02815260040161067690611b10565b8554869085908110610ce557fe5b6000918252602090912060016007909202010154600160a060020a03868116911614610d265760405160e560020a62461bcd02815260040161067690611b50565b610d80866002018054806020026020016040519081016040528092919081815260200182805480156107c657602002820191906000526020600020908154815260200190600101908083116107b25750505050508561132b565b92509050801515610da65760405160e560020a62461bcd02815260040161067690611b30565b600286018054610dbd90600163ffffffff6113c816565b81548110610dc757fe5b90600052602060002001548660020183815481101515610de357fe5b6000918252602090912001556002860154610e0590600163ffffffff6113c816565b610e126002880182611571565b50600486018054600181018255600091825260209091200184905585546005908790869081106108de57fe5b600160a060020a03166000908152600591909101602052604090205490565b610e65611535565b82548210610e885760405160e560020a62461bcd02815260040161067690611b70565b8254839083908110610e9657fe5b60009182526020918290206040805160e08101825260079093029091018054600160a060020a039081168452600182015416938301939093526002830154908201526003820154606082015260048201546080820152600582015460a082015260069091015460c0820152905092915050565b600160a060020a03166000908152600691909101602052604090205490565b6000806000610f3786856111d2565b1515610f585760405160e560020a62461bcd02815260040161067690611ba0565b610fb2866001018054806020026020016040519081016040528092919081815260200182805480156107c657602002820191906000526020600020908154815260200190600101908083116107b25750505050508561132b565b92509050801515610fd85760405160e560020a62461bcd02815260040161067690611b20565b600180870180549091610ff1919063ffffffff6113c816565b81548110610ffb57fe5b9060005260206000200154866001018381548110151561101757fe5b6000918252602090912001556001868101546110389163ffffffff6113c816565b6110456001880182611571565b5060028601805460018101825560009182526020909120018490558554859087908690811061107057fe5b906000526020600020906007020160010160006101000a815481600160a060020a030219169083600160a060020a03160217905550600286600001858154811015156110b857fe5b6000918252602080832060079290920290910160050192909255600160a060020a0396909616865260069690960186525050604083208054600180820183559185529490932090930155919050565b60606104418485600301805480602002602001604051908101604052809291908181526020018280548015610b715760200282019190600052602060002090815481526020019060010190808311610b5d57505050505085856113da565b600160a060020a03811660009081526006830160209081526040918290208054835181840281018401909452808452606093928301828280156106395760200282019190600052602060002090815481526020019060010190808311610625575050505050905092915050565b815460009082106111e5575060006103e8565b50600192915050565b600080600061124d856001018054806020026020016040519081016040528092919081815260200182805480156107c657602002820191906000526020600020908154815260200190600101908083116107b25750505050508561132b565b925090508015156112735760405160e560020a62461bcd02815260040161067690611b20565b60018086018054909161128c919063ffffffff6113c816565b8154811061129657fe5b906000526020600020015485600101838154811015156112b257fe5b6000918252602090912001556001858101546112d39163ffffffff6113c816565b6112e06001870182611571565b506003850180546001810182556000918252602090912001849055845460049086908690811061130c57fe5b6000918252602090912060056007909202010155506001949350505050565b600080600084516000141561134657600092508291506113c0565b508351600019015b600081111561138b5783858281518110151561136657fe5b90602001906020020151141561138257600181925092506113c0565b6000190161134e565b8385600081518110151561139b57fe5b90602001906020020151146113b2576000806113b7565b600160005b90935060ff1691505b509250929050565b6000828211156113d457fe5b50900390565b6060600081818085116114025760405160e560020a62461bcd02815260040161067690611b60565b8460405190808252806020026020018201604052801561143c57816020015b611429611535565b8152602001906001900390816114215790505b5091508590505b865181101561151b57848314156114595761151b565b8651889088908390811061146957fe5b602090810290910101518154811061147d57fe5b60009182526020918290206040805160e08101825260079093029091018054600160a060020a039081168452600182015416938301939093526002830154908201526003820154606082015260048201546080820152600582015460a082015260069091015460c082015282518390859081106114f657fe5b6020908102909101015261151183600163ffffffff61152616565b9250600101611443565b509695505050505050565b60008282018381101561047e57fe5b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081019190915290565b8154818355818111156115955760008381526020902061159591810190830161159a565b505050565b6103a291905b808211156115b457600081556001016115a0565b5090565b600061047e8235611bd6565b600061047e82356103a2565b6000602082840312156115e257600080fd5b600061044184846115b8565b60008060006060848603121561160357600080fd5b600061160f86866115b8565b9350506020611620868287016115c4565b9250506040611631868287016115c4565b9150509250925092565b60006020828403121561164d57600080fd5b600061044184846115c4565b6000806040838503121561166c57600080fd5b600061167885856115c4565b9250506020611689858286016115c4565b9150509250929050565b600080600080608085870312156116a957600080fd5b60006116b587876115c4565b94505060206116c6878288016115c4565b93505060406116d7878288016115c4565b92505060606116e8878288016115c4565b91505092959194509250565b6116fd81611bd6565b82525050565b600061170e82611bd2565b80845260208401935061172083611bcc565b60005b8281101561175057611736868351611a57565b61173f82611bcc565b60e096909601959150600101611723565b5093949350505050565b600061176582611bd2565b80845260208401935061177783611bcc565b60005b828110156117505761178d8683516117b0565b61179682611bcc565b60209690960195915060010161177a565b6116fd81611be2565b6116fd816103a2565b602481527f6c6f636b20636f6d6d616e64207374617475732063616e20626520636f6d706c60208201527f6574656400000000000000000000000000000000000000000000000000000000604082015260600190565b602281527f69647820646f6573206e6f7420657869737420696e2077616974696e67206c6960208201527f7374000000000000000000000000000000000000000000000000000000000000604082015260600190565b602281527f69647820646f6573206e6f7420657869737420696e206c6f636b696e67206c6960208201527f7374000000000000000000000000000000000000000000000000000000000000604082015260600190565b602f81527f6c6f636b20636f6d6d616e64207374617475732063616e206e6f74206265206360208201527f616e63656c6564206f7220646f6e650000000000000000000000000000000000604082015260600190565b601c81527f6167656e742063616e63656c20636f6d6d616e642068696d73656c6600000000602082015260400190565b60208082527f72657475726e206e756d626572206d75737420626967676572207468616e20309082015260400190565b602381527f696e646578206d75737420736d616c6c207468616e2063757272656e7420636f60208201527f756e740000000000000000000000000000000000000000000000000000000000604082015260600190565b60208082527f75736572206f6e6c792063616e63656c2068696d206f776e20636f6d6d616e649082015260400190565b600d81527f696e76616c696420766572627300000000000000000000000000000000000000602082015260400190565b601b81527f6c6f636b20636f6d6d616e6420646f6573206e6f742065786973740000000000602082015260400190565b805160e0830190611a6884826116f4565b506020820151611a7b60208501826116f4565b506040820151611a8e60408501826117b0565b506060820151611aa160608501826117b0565b506080820151611ab460808501826117b0565b5060a0820151611ac760a08501826117b0565b5060c0820151611ada60c08501826117b0565b50505050565b6020808252810161047e8184611703565b6020808252810161047e818461175a565b602081016103e882846117a7565b602080825281016103e8816117b9565b602080825281016103e88161180f565b602080825281016103e881611865565b602080825281016103e8816118bb565b602080825281016103e881611911565b602080825281016103e881611941565b602080825281016103e881611971565b602080825281016103e8816119c7565b602080825281016103e8816119f7565b602080825281016103e881611a27565b60e081016103e88284611a57565b602081016103e882846117b0565b60200190565b5190565b600160a060020a031690565b1515905600a265627a7a72305820284385923e7a46999f8764aac60d1534377f64a546dcdc7dc58c097d11d8011e6c6578706572696d656e74616cf50037",
  "deployedBytecode": "0x6080604052600436106101115763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306661abd81146101165780630c8dc78c1461014157806310bf49fe14610163578063188f320b1461017857806318dffd931461018d5780633b99b677146101a257806340e58ee5146101c2578063477a20e8146101ef57806356c8121c1461020457806356d05d2814610224578063790e3f2b1461025157806383b100521461027157806394ab065814610286578063971d852f146102a65780639ad248a9146102c65780639f8ddccc146102e6578063d1d7d5e614610313578063dd46706414610333578063ecd316f514610353578063fe9cc3fa14610373575b600080fd5b34801561012257600080fd5b5061012b610393565b6040516101389190611bbe565b60405180910390f35b34801561014d57600080fd5b506101566103a5565b6040516101389190611af1565b34801561016f57600080fd5b506101566103b1565b34801561018457600080fd5b5061012b6103bd565b34801561019957600080fd5b5061012b6103c9565b3480156101ae57600080fd5b506101566101bd3660046115d0565b6103d5565b3480156101ce57600080fd5b506101e26101dd36600461163b565b6103ee565b6040516101389190611b02565b3480156101fb57600080fd5b5061012b610401565b34801561021057600080fd5b5061012b61021f366004611693565b61040d565b34801561023057600080fd5b5061024461023f3660046115ee565b61042c565b6040516101389190611ae0565b34801561025d57600080fd5b5061024461026c3660046115ee565b610449565b34801561027d57600080fd5b5061012b61045e565b34801561029257600080fd5b506102446102a1366004611659565b61046a565b3480156102b257600080fd5b506101e26102c136600461163b565b610485565b3480156102d257600080fd5b5061012b6102e13660046115d0565b610498565b3480156102f257600080fd5b5061030661030136600461163b565b6104aa565b6040516101389190611bb0565b34801561031f57600080fd5b5061012b61032e3660046115d0565b6104c3565b34801561033f57600080fd5b506101e261034e36600461163b565b6104d5565b34801561035f57600080fd5b5061024461036e366004611659565b6104e8565b34801561037f57600080fd5b5061015661038e3660046115d0565b6104fc565b600061039f600061050f565b90505b90565b606061039f6000610513565b606061039f600061056f565b600061039f60006105c9565b600061039f60006105d0565b60606103e860008363ffffffff6105d716565b92915050565b60006103e881338463ffffffff61064616565b600061039f6000610901565b600061042381338787878763ffffffff61090816565b95945050505050565b6060610441600085858563ffffffff610afa16565b949350505050565b6060610441600085858563ffffffff610b7d16565b600061039f6000610bfe565b606061047e6000848463ffffffff610c0516565b9392505050565b60006103e881338463ffffffff610c6316565b60006103e8818363ffffffff610e3e16565b6104b2611535565b6103e860008363ffffffff610e5d16565b60006103e8818363ffffffff610f0916565b60006103e881338463ffffffff610f2816565b606061047e6000848463ffffffff61110716565b60606103e860008363ffffffff61116516565b5490565b60608160010180548060200260200160405190810160405280929190818152602001828054801561056357602002820191906000526020600020905b81548152602001906001019080831161054f575b50505050509050919050565b606081600201805480602002602001604051908101604052809291908181526020018280548015610563576020028201919060005260206000209081548152602001906001019080831161054f5750505050509050919050565b6001015490565b6004015490565b600160a060020a038116600090815260058301602090815260409182902080548351818402810184019094528084526060939283018282801561063957602002820191906000526020600020905b815481526020019060010190808311610625575b5050505050905092915050565b600080600061065586856111d2565b151561067f5760405160e560020a62461bcd02815260040161067690611ba0565b60405180910390fd5b855486908590811061068d57fe5b9060005260206000209060070201600501546004141580156106cf575085548690859081106106b857fe5b906000526020600020906007020160050154600514155b15156106f05760405160e560020a62461bcd02815260040161067690611b40565b85548690859081106106fe57fe5b9060005260206000209060070201600501546001141561077557855486908590811061072657fe5b6000918252602090912060079091020154600160a060020a038681169116146107645760405160e560020a62461bcd02815260040161067690611b80565b61076e86856111ee565b92506108f8565b6107d1866002018054806020026020016040519081016040528092919081815260200182805480156107c657602002820191906000526020600020905b8154815260200190600101908083116107b2575b50505050508561132b565b925090508015156107f75760405160e560020a62461bcd02815260040161067690611b30565b855486908590811061080557fe5b6000918252602090912060016007909202010154600160a060020a038681169116146108465760405160e560020a62461bcd02815260040161067690611b50565b60028601805461085d90600163ffffffff6113c816565b8154811061086757fe5b9060005260206000200154866002018381548110151561088357fe5b60009182526020909120015560028601546108a590600163ffffffff6113c816565b6108b26002880182611571565b50600386018054600181018255600091825260209091200184905585546004908790869081106108de57fe5b906000526020600020906007020160050181905550600192505b50509392505050565b6003015490565b6000610912611535565b6000848015806109225750600181145b8061092d5750600281145b151561094e5760405160e560020a62461bcd02815260040161067690611b90565b60e0604051908101604052808a600160a060020a031681526020016000600160a060020a0316815260200189815260200188815260200187815260200160018152602001866000191681525092508960000180549050915089600001839080600181540180825580915050906001820390600052602060002090600702016000909192909190915060008201518160000160006101000a815481600160a060020a030219169083600160a060020a0316021790555060208201518160010160006101000a815481600160a060020a030219169083600160a060020a0316021790555060408201518160020155606082015181600301556080820151816004015560a0820151816005015560c08201518160060190600019169055505050896001018290806001815401808255809150509060018203906000526020600020016000909192909190915055508960050160008a600160a060020a0316600160a060020a031681526020019081526020016000208290806001815401808255809150509060018203906000526020600020016000909192909190915055508193505050509695505050505050565b60606104238586600601600087600160a060020a0316600160a060020a03168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610b7157602002820191906000526020600020905b815481526020019060010190808311610b5d575b505050505085856113da565b60606104238586600501600087600160a060020a0316600160a060020a03168152602001908152602001600020805480602002602001604051908101604052809291908181526020018280548015610b715760200282019190600052602060002090815481526020019060010190808311610b5d57505050505085856113da565b6002015490565b60606104418485600401805480602002602001604051908101604052809291908181526020018280548015610b715760200282019190600052602060002090815481526020019060010190808311610b5d57505050505085856113da565b6000806000610c7286856111d2565b1515610c935760405160e560020a62461bcd02815260040161067690611ba0565b8554869085908110610ca157fe5b9060005260206000209060070201600501546002141515610cd75760405160e560020a62461bcd02815260040161067690611b10565b8554869085908110610ce557fe5b6000918252602090912060016007909202010154600160a060020a03868116911614610d265760405160e560020a62461bcd02815260040161067690611b50565b610d80866002018054806020026020016040519081016040528092919081815260200182805480156107c657602002820191906000526020600020908154815260200190600101908083116107b25750505050508561132b565b92509050801515610da65760405160e560020a62461bcd02815260040161067690611b30565b600286018054610dbd90600163ffffffff6113c816565b81548110610dc757fe5b90600052602060002001548660020183815481101515610de357fe5b6000918252602090912001556002860154610e0590600163ffffffff6113c816565b610e126002880182611571565b50600486018054600181018255600091825260209091200184905585546005908790869081106108de57fe5b600160a060020a03166000908152600591909101602052604090205490565b610e65611535565b82548210610e885760405160e560020a62461bcd02815260040161067690611b70565b8254839083908110610e9657fe5b60009182526020918290206040805160e08101825260079093029091018054600160a060020a039081168452600182015416938301939093526002830154908201526003820154606082015260048201546080820152600582015460a082015260069091015460c0820152905092915050565b600160a060020a03166000908152600691909101602052604090205490565b6000806000610f3786856111d2565b1515610f585760405160e560020a62461bcd02815260040161067690611ba0565b610fb2866001018054806020026020016040519081016040528092919081815260200182805480156107c657602002820191906000526020600020908154815260200190600101908083116107b25750505050508561132b565b92509050801515610fd85760405160e560020a62461bcd02815260040161067690611b20565b600180870180549091610ff1919063ffffffff6113c816565b81548110610ffb57fe5b9060005260206000200154866001018381548110151561101757fe5b6000918252602090912001556001868101546110389163ffffffff6113c816565b6110456001880182611571565b5060028601805460018101825560009182526020909120018490558554859087908690811061107057fe5b906000526020600020906007020160010160006101000a815481600160a060020a030219169083600160a060020a03160217905550600286600001858154811015156110b857fe5b6000918252602080832060079290920290910160050192909255600160a060020a0396909616865260069690960186525050604083208054600180820183559185529490932090930155919050565b60606104418485600301805480602002602001604051908101604052809291908181526020018280548015610b715760200282019190600052602060002090815481526020019060010190808311610b5d57505050505085856113da565b600160a060020a03811660009081526006830160209081526040918290208054835181840281018401909452808452606093928301828280156106395760200282019190600052602060002090815481526020019060010190808311610625575050505050905092915050565b815460009082106111e5575060006103e8565b50600192915050565b600080600061124d856001018054806020026020016040519081016040528092919081815260200182805480156107c657602002820191906000526020600020908154815260200190600101908083116107b25750505050508561132b565b925090508015156112735760405160e560020a62461bcd02815260040161067690611b20565b60018086018054909161128c919063ffffffff6113c816565b8154811061129657fe5b906000526020600020015485600101838154811015156112b257fe5b6000918252602090912001556001858101546112d39163ffffffff6113c816565b6112e06001870182611571565b506003850180546001810182556000918252602090912001849055845460049086908690811061130c57fe5b6000918252602090912060056007909202010155506001949350505050565b600080600084516000141561134657600092508291506113c0565b508351600019015b600081111561138b5783858281518110151561136657fe5b90602001906020020151141561138257600181925092506113c0565b6000190161134e565b8385600081518110151561139b57fe5b90602001906020020151146113b2576000806113b7565b600160005b90935060ff1691505b509250929050565b6000828211156113d457fe5b50900390565b6060600081818085116114025760405160e560020a62461bcd02815260040161067690611b60565b8460405190808252806020026020018201604052801561143c57816020015b611429611535565b8152602001906001900390816114215790505b5091508590505b865181101561151b57848314156114595761151b565b8651889088908390811061146957fe5b602090810290910101518154811061147d57fe5b60009182526020918290206040805160e08101825260079093029091018054600160a060020a039081168452600182015416938301939093526002830154908201526003820154606082015260048201546080820152600582015460a082015260069091015460c082015282518390859081106114f657fe5b6020908102909101015261151183600163ffffffff61152616565b9250600101611443565b509695505050505050565b60008282018381101561047e57fe5b6040805160e081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c081019190915290565b8154818355818111156115955760008381526020902061159591810190830161159a565b505050565b6103a291905b808211156115b457600081556001016115a0565b5090565b600061047e8235611bd6565b600061047e82356103a2565b6000602082840312156115e257600080fd5b600061044184846115b8565b60008060006060848603121561160357600080fd5b600061160f86866115b8565b9350506020611620868287016115c4565b9250506040611631868287016115c4565b9150509250925092565b60006020828403121561164d57600080fd5b600061044184846115c4565b6000806040838503121561166c57600080fd5b600061167885856115c4565b9250506020611689858286016115c4565b9150509250929050565b600080600080608085870312156116a957600080fd5b60006116b587876115c4565b94505060206116c6878288016115c4565b93505060406116d7878288016115c4565b92505060606116e8878288016115c4565b91505092959194509250565b6116fd81611bd6565b82525050565b600061170e82611bd2565b80845260208401935061172083611bcc565b60005b8281101561175057611736868351611a57565b61173f82611bcc565b60e096909601959150600101611723565b5093949350505050565b600061176582611bd2565b80845260208401935061177783611bcc565b60005b828110156117505761178d8683516117b0565b61179682611bcc565b60209690960195915060010161177a565b6116fd81611be2565b6116fd816103a2565b602481527f6c6f636b20636f6d6d616e64207374617475732063616e20626520636f6d706c60208201527f6574656400000000000000000000000000000000000000000000000000000000604082015260600190565b602281527f69647820646f6573206e6f7420657869737420696e2077616974696e67206c6960208201527f7374000000000000000000000000000000000000000000000000000000000000604082015260600190565b602281527f69647820646f6573206e6f7420657869737420696e206c6f636b696e67206c6960208201527f7374000000000000000000000000000000000000000000000000000000000000604082015260600190565b602f81527f6c6f636b20636f6d6d616e64207374617475732063616e206e6f74206265206360208201527f616e63656c6564206f7220646f6e650000000000000000000000000000000000604082015260600190565b601c81527f6167656e742063616e63656c20636f6d6d616e642068696d73656c6600000000602082015260400190565b60208082527f72657475726e206e756d626572206d75737420626967676572207468616e20309082015260400190565b602381527f696e646578206d75737420736d616c6c207468616e2063757272656e7420636f60208201527f756e740000000000000000000000000000000000000000000000000000000000604082015260600190565b60208082527f75736572206f6e6c792063616e63656c2068696d206f776e20636f6d6d616e649082015260400190565b600d81527f696e76616c696420766572627300000000000000000000000000000000000000602082015260400190565b601b81527f6c6f636b20636f6d6d616e6420646f6573206e6f742065786973740000000000602082015260400190565b805160e0830190611a6884826116f4565b506020820151611a7b60208501826116f4565b506040820151611a8e60408501826117b0565b506060820151611aa160608501826117b0565b506080820151611ab460808501826117b0565b5060a0820151611ac760a08501826117b0565b5060c0820151611ada60c08501826117b0565b50505050565b6020808252810161047e8184611703565b6020808252810161047e818461175a565b602081016103e882846117a7565b602080825281016103e8816117b9565b602080825281016103e88161180f565b602080825281016103e881611865565b602080825281016103e8816118bb565b602080825281016103e881611911565b602080825281016103e881611941565b602080825281016103e881611971565b602080825281016103e8816119c7565b602080825281016103e8816119f7565b602080825281016103e881611a27565b60e081016103e88284611a57565b602081016103e882846117b0565b60200190565b5190565b600160a060020a031690565b1515905600a265627a7a72305820284385923e7a46999f8764aac60d1534377f64a546dcdc7dc58c097d11d8011e6c6578706572696d656e74616cf50037",
  "sourceMap": "138:2781:25:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;138:2781:25;;;;;;;",
  "deployedSourceMap": "138:2781:25:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;809:81;;8:9:-1;5:2;;;30:1;27;20:12;5:2;809:81:25;;;;;;;;;;;;;;;;;;;;1945:99;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1945:99:25;;;;;;;;;;;;2048;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2048:99:25;;;;894:95;;8:9:-1;5:2;;;30:1;27;20:12;5:2;894:95:25;;;;1193:99;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1193:99:25;;;;1669:149;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1669:149:25;;;;;;;;;591:103;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;591:103:25;;;;;;;;;;;;;;;;;1092:97;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1092:97:25;;;;252:232;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;252:232:25;;;;;;;;;2365:194;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2365:194:25;;;;;;;;;;;;;;;;;2151:210;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2151:210:25;;;;;;;;;993:95;;8:9:-1;5:2;;;30:1;27;20:12;5:2;993:95:25;;;;2741:176;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2741:176:25;;;;;;;;;698:107;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;698:107:25;;;;;;;;;1296:131;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1296:131:25;;;;;;;;;1550:115;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1550:115:25;;;;;;;;;;;;;;;;;1431;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1431:115:25;;;;;;;;;488:99;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;488:99:25;;;;;;;;;2563:174;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2563:174:25;;;;;;;;;1822:119;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1822:119:25;;;;;;;;;809:81;847:7;869:16;:8;:14;:16::i;:::-;862:23;;809:81;;:::o;1945:99::-;1991:9;2015:24;:8;:22;:24::i;2048:99::-;2094:9;2118:24;:8;:22;:24::i;894:95::-;939:7;961:23;:8;:21;:23::i;1193:99::-;1240:7;1262:25;:8;:23;:25::i;1669:149::-;1749:9;1775:38;:8;1802:10;1775:38;:26;:38;:::i;:::-;1768:45;1669:149;-1:-1:-1;;1669:149:25:o;591:103::-;637:4;656:33;637:4;672:10;684:4;656:33;:15;:33;:::i;1092:97::-;1138:7;1160:24;:8;:22;:24::i;252:232::-;380:7;408:71;380:7;424:10;436;448:8;458:6;466:12;408:71;:15;:71;:::i;:::-;395:84;252:232;-1:-1:-1;;;;;252:232:25:o;2365:194::-;2469:21;2512:42;:8;2532:6;2540:5;2547:6;2512:42;:19;:42;:::i;:::-;2505:49;2365:194;-1:-1:-1;;;;2365:194:25:o;2151:210::-;2263:21;2306:50;:8;2330:10;2342:5;2349:6;2306:50;:23;:50;:::i;993:95::-;1038:7;1060:23;:8;:21;:23::i;2741:176::-;2829:21;2874:38;:8;2898:5;2905:6;2874:38;:23;:38;:::i;:::-;2867:45;2741:176;-1:-1:-1;;;2741:176:25:o;698:107::-;746:4;765:35;746:4;783:10;795:4;765:35;:17;:35;:::i;1296:131::-;1363:7;1385:37;1363:7;1411:10;1385:37;:25;:37;:::i;1550:115::-;1603:19;;:::i;:::-;1637:23;:8;1655:4;1637:23;:17;:23;:::i;1431:115::-;1490:7;1512:29;1490:7;1534:6;1512:29;:21;:29;:::i;488:99::-;532:4;551:31;532:4;565:10;577:4;551:31;:13;:31;:::i;2563:174::-;2650:21;2695:37;:8;2718:5;2725:6;2695:37;:22;:37;:::i;1822:119::-;1882:9;1906:30;:8;1929:6;1906:30;:22;:30;:::i;5974:106:15:-;6059:16;;5974:106::o;7519:126::-;7602:9;7628:4;:12;;7621:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7519:126;;;:::o;7649:::-;7732:9;7758:4;:12;;7751:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7649:126;;;:::o;6084:130::-;6190:12;;:19;;6084:130::o;6488:134::-;6596:14;;:21;;6488:134::o;7191:168::-;-1:-1:-1;;;;;7324:30:15;;;;;;:18;;;:30;;;;;;;;;7317:37;;;;;;;;;;;;;;;;;7298:9;;7317:37;;;7324:30;7317:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7191:168;;;;:::o;3989:1130::-;4086:4;4617:19;4642:11;4108:17;4114:4;4120;4108:5;:17::i;:::-;4100:57;;;;;;-1:-1:-1;;;;;4100:57:15;;;;;;;;;;;;;;;;;4178:15;;:4;;4188;;4178:15;;;;;;;;;;;;;;;;:22;;;4204:1;4178:27;;:58;;;;-1:-1:-1;4209:15:15;;:4;;4219;;4209:15;;;;;;;;;;;;;;;;:22;;;4235:1;4209:27;;4178:58;4163:136;;;;;;-1:-1:-1;;;;;4163:136:15;;;;;;;;;4333:15;;:4;;4343;;4333:15;;;;;;;;;;;;;;;;:22;;;4359:1;4333:27;4329:234;;;4435:15;;:4;;4445;;4435:15;;;;;;;;;;;;;;;;;;;:25;-1:-1:-1;;;;;4425:35:15;;;4435:25;;4425:35;4408:104;;;;-1:-1:-1;;;;;4408:104:15;;;;;;;;;4527:29;4545:4;4551;4527:17;:29::i;:::-;4520:36;;;;4329:234;4683:26;4690:4;:12;;4683:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4704:4;4683:6;:26::i;:::-;4659:50;-1:-1:-1;4659:50:15;-1:-1:-1;4715:53:15;;;;;;;-1:-1:-1;;;;;4715:53:15;;;;;;;;;4792:15;;:4;;4802;;4792:15;;;;;;;;;;;;;;:21;:15;;;;;:21;;-1:-1:-1;;;;;4782:31:15;;;4792:21;;4782:31;4774:72;;;;-1:-1:-1;;;;;4774:72:15;;;;;;;;;4912:12;;;4925:19;;:26;;4949:1;4925:26;:23;:26;:::i;:::-;4912:40;;;;;;;;;;;;;;;;4884:4;:12;;4897:11;4884:25;;;;;;;;;;;;;;;;;;;:68;4980:12;;;:19;:26;;5004:1;4980:26;:23;:26;:::i;:::-;4958:48;:12;;;:48;;:::i;:::-;-1:-1:-1;5040:13:15;;;27:10:-1;;39:1;23:18;;45:23;;-1:-1;5040:24:15;;;;;;;;;;;5070:15;;5095:1;;5040:4;;5059;;5070:15;;;;;;;;;;;;;;;;:22;;:26;;;;5110:4;5103:11;;3989:1130;;;;;;;;:::o;6352:132::-;6459:13;;:20;;6352:132::o;1760:590::-;1962:7;1977:16;;:::i;:::-;2197:12;1945:6;1379:33;;;:78;;-1:-1:-1;1442:14:15;1424:6;:33;1379:78;:122;;;-1:-1:-1;1487:13:15;1469:6;:32;1379:122;1364:166;;;;;;-1:-1:-1;;;;;1364:166:15;;;;;;;;;1996:194;;;;;;;;;2023:10;-1:-1:-1;;;;;1996:194:15;;;;;2056:1;-1:-1:-1;;;;;1996:194:15;;;;;2077:10;1996:194;;;;2104:8;1996:194;;;;2127:6;1996:194;;;;2149:1;1996:194;;;;2171:12;1996:194;;;;;;1977:213;;2212:4;:9;;:16;;;;2197:31;;2234:4;:9;;2249:1;2234:17;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;2234:17:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2234:17:15;;;;;-1:-1:-1;;;;;2234:17:15;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2234:17:15;;;;;-1:-1:-1;;;;;2234:17:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2257:4;:12;;2275:4;2257:23;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;2257:23:15;;;;;;;;;;;;;;;;;;;;;;2286:4;:18;;:30;2305:10;-1:-1:-1;;;;;2286:30:15;-1:-1:-1;;;;;2286:30:15;;;;;;;;;;;;2322:4;2286:41;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;2286:41:15;;;;;;;;;;;;;;;;;;;;;;2341:4;2334:11;;1760:590;;;;;;;;;;;:::o;8560:238::-;8695:21;8738:55;8749:4;8755;:14;;:22;8770:6;-1:-1:-1;;;;;8755:22:15;-1:-1:-1;;;;;8755:22:15;;;;;;;;;;;;8738:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8779:5;8786:6;8738:10;:55::i;8302:254::-;8445:21;8488:63;8499:4;8505;:18;;:30;8524:10;-1:-1:-1;;;;;8505:30:15;-1:-1:-1;;;;;8505:30:15;;;;;;;;;;;;8488:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8537:5;8544:6;8488:10;:63::i;6218:130::-;6324:12;;:19;;6218:130::o;9016:214::-;9135:21;9178:47;9189:4;9195;:14;;9178:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9211:5;9218:6;9178:10;:47::i;5123:847::-;5222:4;5544:19;5569:11;5244:17;5250:4;5256;5244:5;:17::i;:::-;5236:57;;;;;;-1:-1:-1;;;;;5236:57:15;;;;;;;;;5352:15;;:4;;5362;;5352:15;;;;;;;;;;;;;;;;:22;;;5378:1;5352:27;5337:94;;;;;;-1:-1:-1;;;;;5337:94:15;;;;;;;;;5455:15;;:4;;5465;;5455:15;;;;;;;;;;;;;;:21;:15;;;;;:21;;-1:-1:-1;;;;;5445:31:15;;;5455:21;;5445:31;5437:72;;;;-1:-1:-1;;;;;5437:72:15;;;;;;;;;5610:26;5617:4;:12;;5610:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5631:4;5610:6;:26::i;:::-;5586:50;-1:-1:-1;5586:50:15;-1:-1:-1;5642:53:15;;;;;;;-1:-1:-1;;;;;5642:53:15;;;;;;;;;5761:12;;;5774:19;;:26;;5798:1;5774:26;:23;:26;:::i;:::-;5761:40;;;;;;;;;;;;;;;;5733:4;:12;;5746:11;5733:25;;;;;;;;;;;;;;;;;;;:68;5829:12;;;:19;:26;;5853:1;5829:26;:23;:26;:::i;:::-;5807:48;:12;;;:48;;:::i;:::-;-1:-1:-1;5890:14:15;;;27:10:-1;;39:1;23:18;;45:23;;-1:-1;5890:25:15;;;;;;;;;;;5921:15;;5946:1;;5890:4;;5910;;5921:15;;;;;6626:172;-1:-1:-1;;;;;6756:30:15;6732:7;6756:30;;;:18;;;;;:30;;;;;:37;;6626:172::o;6962:225::-;7054:19;;:::i;:::-;7098:16;;7091:23;;7083:71;;;;-1:-1:-1;;;;;7083:71:15;;;;;;;;;7167:15;;:4;;7177;;7167:15;;;;;;;;;;;;;;;7160:22;;;;;;;;7167:15;;;;;;;7160:22;;-1:-1:-1;;;;;7160:22:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6962:225:15;;;;:::o;6802:156::-;-1:-1:-1;;;;;6924:22:15;6900:7;6924:22;;;:14;;;;;:22;;;;;:29;;6802:156::o;2695:726::-;2790:4;2896:19;2921:11;2812:17;2818:4;2824;2812:5;:17::i;:::-;2804:57;;;;;;-1:-1:-1;;;;;2804:57:15;;;;;;;;;2962:26;2969:4;:12;;2962:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2983:4;2962:6;:26::i;:::-;2938:50;-1:-1:-1;2938:50:15;-1:-1:-1;2994:53:15;;;;;;;-1:-1:-1;;;;;2994:53:15;;;;;;;;;3113:12;;;;3126:19;;3113:12;;3126:26;;:19;:26;:23;:26;:::i;:::-;3113:40;;;;;;;;;;;;;;;;3085:4;:12;;3098:11;3085:25;;;;;;;;;;;;;;;;;;;:68;3205:1;3181:12;;;:19;:26;;;:23;:26;:::i;:::-;3159:48;:12;;;:48;;:::i;:::-;-1:-1:-1;3237:12:15;;;27:10:-1;;39:1;23:18;;45:23;;-1:-1;3237:23:15;;;;;;;;;;;3297:15;;3321:6;;3237:4;;3255;;3297:15;;;;;;;;;;;;;;;;:21;;;:30;;;;;-1:-1:-1;;;;;3297:30:15;;;;;-1:-1:-1;;;;;3297:30:15;;;;;;3358:1;3333:4;:9;;3343:4;3333:15;;;;;;;;;;;;;;;;;;;;;;;;;;:22;;:26;;;;-1:-1:-1;;;;;3365:22:15;;;;;;:14;;;;;:22;;-1:-1:-1;;3365:22:15;;;27:10:-1;;39:1;23:18;;;45:23;;3365:33:15;;;;;;;;;;;39:1:-1;2695:726:15;-1:-1:-1;2695:726:15:o;8802:210::-;8916:21;8961:46;8972:4;8978;:13;;8961:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8993:5;9000:6;8961:10;:46::i;7363:152::-;-1:-1:-1;;;;;7488:22:15;;;;;;:14;;;:22;;;;;;;;;7481:29;;;;;;;;;;;;;;;;;7462:9;;7481:29;;;7488:22;7481:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7363:152;;;;:::o;1546:167::-;1661:16;;1635:4;;1653:24;;1649:42;;-1:-1:-1;1686:5:15;1679:12;;1649:42;-1:-1:-1;1704:4:15;1546:167;;;;:::o;3425:560::-;3517:4;3559:19;3584:11;3625:26;3632:4;:12;;3625:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3646:4;3625:6;:26::i;:::-;3601:50;-1:-1:-1;3601:50:15;-1:-1:-1;3657:53:15;;;;;;;-1:-1:-1;;;;;3657:53:15;;;;;;;;;3778:12;;;;3791:19;;3778:12;;3791:26;;:19;:26;:23;:26;:::i;:::-;3778:40;;;;;;;;;;;;;;;;3750:4;:12;;3763:11;3750:25;;;;;;;;;;;;;;;;;;;:68;3870:1;3846:12;;;:19;:26;;;:23;:26;:::i;:::-;3824:48;:12;;;:48;;:::i;:::-;-1:-1:-1;3906:13:15;;;27:10:-1;;39:1;23:18;;45:23;;-1:-1;3906:24:15;;;;;;;;;;;3936:15;;3961:1;;3906:4;;3925;;3936:15;;;;;;;;;;;;;;:22;:15;;;;;:22;:26;-1:-1:-1;3976:4:15;;3425:560;-1:-1:-1;;;;3425:560:15:o;2354:337::-;2435:4;2441:7;2522:9;2462:4;:11;2477:1;2462:16;2458:54;;;2496:5;;-1:-1:-1;2496:5:15;;-1:-1:-1;2488:17:15;;2458:54;-1:-1:-1;2534:11:15;;-1:-1:-1;;2534:15:15;2517:116;2555:1;2551;:5;2517:116;;;2586:4;2575;2580:1;2575:7;;;;;;;;;;;;;;;;;;:15;2571:56;;;2610:4;2616:1;2602:16;;;;;;2571:56;-1:-1:-1;;2558:3:15;2517:116;;;2657:4;2646;2651:1;2646:7;;;;;;;;;;;;;;;;;;:15;:40;;2677:5;;2646:40;;;2665:4;2671:1;2646:40;2639:47;;-1:-1:-1;2639:47:15;;;-1:-1:-1;2354:337:15;;;;;;;:::o;1093:116:20:-;1153:7;1175:8;;;;1168:16;;;;-1:-1:-1;1197:7:20;;;1093:116::o;7779:519:15:-;7914:21;7950:12;7914:21;7950:12;7980:10;;;7972:55;;;;-1:-1:-1;;;;;7972:55:15;;;;;;;;;8094:6;8068:33;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;8033:68;;8125:5;8113:17;;8108:169;8136:4;:11;8132:1;:15;8108:169;;;8174:6;8166:4;:14;8162:44;;;8192:5;;8162:44;8236:7;;8226:4;;8236;;8241:1;;8236:7;;;;;;;;;;;;;;;8226:18;;;;;;;;;;;;;;;;;8214:30;;;;;;;;8226:18;;;;;;;8214:30;;-1:-1:-1;;;;;8214:30:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:9;;:3;;8218:4;;8214:9;;;;;;;;;;;;;;:30;8259:11;:4;8268:1;8259:11;:8;:11;:::i;:::-;8252:18;-1:-1:-1;8149:3:15;;8108:169;;;-1:-1:-1;8290:3:15;7779:519;-1:-1:-1;;;;;;7779:519:15:o;1319:134:20:-;1379:7;1406;;;1426;;;;1419:15;;;138:2781:25;;;;;;;;;-1:-1:-1;138:2781:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;5:118:-1;;72:46;110:6;97:20;72:46;;130:118;;197:46;235:6;222:20;197:46;;380:241;;484:2;472:9;463:7;459:23;455:32;452:2;;;500:1;497;490:12;452:2;535:1;552:53;597:7;577:9;552:53;;628:491;;;;766:2;754:9;745:7;741:23;737:32;734:2;;;782:1;779;772:12;734:2;817:1;834:53;879:7;859:9;834:53;;;824:63;;796:97;924:2;942:53;987:7;978:6;967:9;963:22;942:53;;;932:63;;903:98;1032:2;1050:53;1095:7;1086:6;1075:9;1071:22;1050:53;;;1040:63;;1011:98;728:391;;;;;;1126:241;;1230:2;1218:9;1209:7;1205:23;1201:32;1198:2;;;1246:1;1243;1236:12;1198:2;1281:1;1298:53;1343:7;1323:9;1298:53;;1374:366;;;1495:2;1483:9;1474:7;1470:23;1466:32;1463:2;;;1511:1;1508;1501:12;1463:2;1546:1;1563:53;1608:7;1588:9;1563:53;;;1553:63;;1525:97;1653:2;1671:53;1716:7;1707:6;1696:9;1692:22;1671:53;;;1661:63;;1632:98;1457:283;;;;;;1747:617;;;;;1902:3;1890:9;1881:7;1877:23;1873:33;1870:2;;;1919:1;1916;1909:12;1870:2;1954:1;1971:53;2016:7;1996:9;1971:53;;;1961:63;;1933:97;2061:2;2079:53;2124:7;2115:6;2104:9;2100:22;2079:53;;;2069:63;;2040:98;2169:2;2187:53;2232:7;2223:6;2212:9;2208:22;2187:53;;;2177:63;;2148:98;2277:2;2295:53;2340:7;2331:6;2320:9;2316:22;2295:53;;;2285:63;;2256:98;1864:500;;;;;;;;2371:110;2444:31;2469:5;2444:31;;;2439:3;2432:44;2426:55;;;2557:741;;2734:75;2803:5;2734:75;;;2827:6;2822:3;2815:19;2851:4;2846:3;2842:14;2835:21;;2896:77;2967:5;2896:77;;;2994:1;2979:297;3004:6;3001:1;2998:13;2979:297;;;3044:99;3139:3;3130:6;3124:13;3044:99;;;3160:81;3234:6;3160:81;;;3264:4;3255:14;;;;;3150:91;-1:-1;3026:1;3019:9;2979:297;;;-1:-1;3289:3;;2713:585;-1:-1;;;;2713:585;3337:590;;3472:54;3520:5;3472:54;;;3544:6;3539:3;3532:19;3568:4;3563:3;3559:14;3552:21;;3613:56;3663:5;3613:56;;;3690:1;3675:230;3700:6;3697:1;3694:13;3675:230;;;3740:53;3789:3;3780:6;3774:13;3740:53;;;3810:60;3863:6;3810:60;;;3893:4;3884:14;;;;;3800:70;-1:-1;3722:1;3715:9;3675:230;;3935:101;4002:28;4024:5;4002:28;;4043:110;4116:31;4141:5;4116:31;;4161:397;4316:2;4304:15;;4353:66;4348:2;4339:12;;4332:88;4454:66;4449:2;4440:12;;4433:88;4549:2;4540:12;;4297:261;4567:397;4722:2;4710:15;;4759:66;4754:2;4745:12;;4738:88;4860:66;4855:2;4846:12;;4839:88;4955:2;4946:12;;4703:261;4973:397;5128:2;5116:15;;5165:66;5160:2;5151:12;;5144:88;5266:66;5261:2;5252:12;;5245:88;5361:2;5352:12;;5109:261;5379:397;5534:2;5522:15;;5571:66;5566:2;5557:12;;5550:88;5672:66;5667:2;5658:12;;5651:88;5767:2;5758:12;;5515:261;5785:296;5940:2;5928:15;;5977:66;5972:2;5963:12;;5956:88;6072:2;6063:12;;5921:160;6090:296;6245:2;6233:15;;;6282:66;6268:12;;;6261:88;6377:2;6368:12;;6226:160;6395:397;6550:2;6538:15;;6587:66;6582:2;6573:12;;6566:88;6688:66;6683:2;6674:12;;6667:88;6783:2;6774:12;;6531:261;6801:296;6956:2;6944:15;;;6993:66;6979:12;;;6972:88;7088:2;7079:12;;6937:160;7106:296;7261:2;7249:15;;7298:66;7293:2;7284:12;;7277:88;7393:2;7384:12;;7242:160;7411:296;7566:2;7554:15;;7603:66;7598:2;7589:12;;7582:88;7698:2;7689:12;;7547:160;7778:1356;7985:22;;7911:4;7902:14;;;8019:61;7906:3;7985:22;8019:61;;;7931:161;8169:4;8162:5;8158:16;8152:23;8187:62;8243:4;8238:3;8234:14;8221:11;8187:62;;;8102:159;8342:4;8335:5;8331:16;8325:23;8360:62;8416:4;8411:3;8407:14;8394:11;8360:62;;;8271:163;8513:4;8506:5;8502:16;8496:23;8531:62;8587:4;8582:3;8578:14;8565:11;8531:62;;;8444:161;8682:4;8675:5;8671:16;8665:23;8700:62;8756:4;8751:3;8747:14;8734:11;8700:62;;;8615:159;8852:4;8845:5;8841:16;8835:23;8870:62;8926:4;8921:3;8917:14;8904:11;8870:62;;;8784:160;9027:4;9020:5;9016:16;9010:23;9045:62;9101:4;9096:3;9092:14;9079:11;9045:62;;;8954:165;7884:1250;;;;10680:425;10880:2;10894:47;;;10865:18;;10955:140;10865:18;11081:6;10955:140;;11112:341;11270:2;11284:47;;;11255:18;;11345:98;11255:18;11429:6;11345:98;;11460:181;11562:2;11547:18;;11576:55;11551:9;11604:6;11576:55;;11648:387;11829:2;11843:47;;;11814:18;;11904:121;11814:18;11904:121;;12042:387;12223:2;12237:47;;;12208:18;;12298:121;12208:18;12298:121;;12436:387;12617:2;12631:47;;;12602:18;;12692:121;12602:18;12692:121;;12830:387;13011:2;13025:47;;;12996:18;;13086:121;12996:18;13086:121;;13224:387;13405:2;13419:47;;;13390:18;;13480:121;13390:18;13480:121;;13618:387;13799:2;13813:47;;;13784:18;;13874:121;13784:18;13874:121;;14012:387;14193:2;14207:47;;;14178:18;;14268:121;14178:18;14268:121;;14406:387;14587:2;14601:47;;;14572:18;;14662:121;14572:18;14662:121;;14800:387;14981:2;14995:47;;;14966:18;;15056:121;14966:18;15056:121;;15194:387;15375:2;15389:47;;;15360:18;;15450:121;15360:18;15450:121;;15588:294;15746:3;15731:19;;15761:111;15735:9;15845:6;15761:111;;15889:193;15997:2;15982:18;;16011:61;15986:9;16045:6;16011:61;;16091:142;16221:4;16209:17;;16190:43;16374:128;16485:12;;16469:33;16906:128;-1:-1;;;;;16975:54;;16958:76;17041:92;17114:13;17107:21;;17090:43",
  "source": "pragma solidity >=0.4.24;\npragma experimental ABIEncoderV2;\n\nimport \"../list/CommandList.sol\";\n\n// 定义一个调用CommandList的合约\ncontract MockCommandList {\n  using CommandList for CommandList.commandMap;\n\n  CommandList.commandMap commands;\n\n  function insert(\n    uint256 _fromChain,\n    uint256 _toChain,\n    uint256 _verbs,\n    bytes32 _payloadHash\n  ) public returns (uint256) {\n    return\n      commands.insert(msg.sender, _fromChain, _toChain, _verbs, _payloadHash);\n  }\n\n  function lock(uint256 _idx) public returns (bool) {\n    return commands.lock(msg.sender, _idx);\n  }\n\n  function cancel(uint256 _idx) public returns (bool) {\n    return commands.cancel(msg.sender, _idx);\n  }\n\n  function complete(uint256 _idx) public returns (bool) {\n    return commands.complete(msg.sender, _idx);\n  }\n\n  function count() public view returns (uint256) {\n    return commands.count();\n  }\n\n  function countWaiting() public view returns (uint256) {\n    return commands.countWaiting();\n  }\n\n  function countLocking() public view returns (uint256) {\n    return commands.countLocking();\n  }\n\n  function countCanceled() public view returns (uint256) {\n    return commands.countCanceled();\n  }\n\n  function countCompleted() public view returns (uint256) {\n    return commands.countCompleted();\n  }\n\n  function countBySubmitter(address _submitter) public view returns (uint256) {\n    return commands.countBySubmitter(_submitter);\n  }\n\n  function countByAgent(address _agent) public view returns (uint256) {\n    return commands.countByAgent(_agent);\n  }\n\n  function getByIdx(uint256 _idx) public view returns (CommandList.element) {\n    return commands.getByIdx(_idx);\n  }\n\n  function getIdxBySubmitter(address _submitter)\n    public\n    view\n    returns (uint256[])\n  {\n    return commands.getIdxBySubmitter(_submitter);\n  }\n\n  function getIdxByAgent(address _agent) public view returns (uint256[]) {\n    return commands.getIdxByAgent(_agent);\n  }\n\n  function getWaitingIdx() public view returns (uint256[]) {\n    return commands.getWaitingIdx();\n  }\n\n  function getLockingIdx() public view returns (uint256[]) {\n    return commands.getLockingIdx();\n  }\n\n  function getBySubmitter(\n    address _submitter,\n    uint256 _from,\n    uint256 _count\n  ) public view returns (CommandList.element[] memory) {\n    return commands.getBySubmitter(_submitter, _from, _count);\n  }\n\n  function getByAgent(\n    address _agent,\n    uint256 _from,\n    uint256 _count\n  ) public view returns (CommandList.element[] memory) {\n    return commands.getByAgent(_agent, _from, _count);\n  }\n\n  function getByCanceled(uint256 _from, uint256 _count)\n    public\n    view\n    returns (CommandList.element[] memory)\n  {\n    return commands.getByCanceled(_from, _count);\n  }\n\n  function getByCompleted(uint256 _from, uint256 _count)\n    public\n    view\n    returns (CommandList.element[] memory)\n  {\n    return commands.getByCompleted(_from, _count);\n  }\n}\n",
  "sourcePath": "/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/mock/MockCommandList.sol",
  "ast": {
    "absolutePath": "/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/mock/MockCommandList.sol",
    "exportedSymbols": {
      "MockCommandList": [
        6267
      ]
    },
    "id": 6268,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 5977,
        "literals": [
          "solidity",
          ">=",
          "0.4",
          ".24"
        ],
        "nodeType": "PragmaDirective",
        "src": "0:25:25"
      },
      {
        "id": 5978,
        "literals": [
          "experimental",
          "ABIEncoderV2"
        ],
        "nodeType": "PragmaDirective",
        "src": "26:33:25"
      },
      {
        "absolutePath": "/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/list/CommandList.sol",
        "file": "../list/CommandList.sol",
        "id": 5979,
        "nodeType": "ImportDirective",
        "scope": 6268,
        "sourceUnit": 3761,
        "src": "61:33:25",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": true,
        "id": 6267,
        "linearizedBaseContracts": [
          6267
        ],
        "name": "MockCommandList",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "id": 5982,
            "libraryName": {
              "contractScope": null,
              "id": 5980,
              "name": "CommandList",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 3760,
              "src": "173:11:25",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_CommandList_$3760",
                "typeString": "library CommandList"
              }
            },
            "nodeType": "UsingForDirective",
            "src": "167:45:25",
            "typeName": {
              "contractScope": null,
              "id": 5981,
              "name": "CommandList.commandMap",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 2797,
              "src": "189:22:25",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
                "typeString": "struct CommandList.commandMap"
              }
            }
          },
          {
            "constant": false,
            "id": 5984,
            "name": "commands",
            "nodeType": "VariableDeclaration",
            "scope": 6267,
            "src": "216:31:25",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_struct$_commandMap_$2797_storage",
              "typeString": "struct CommandList.commandMap"
            },
            "typeName": {
              "contractScope": null,
              "id": 5983,
              "name": "CommandList.commandMap",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 2797,
              "src": "216:22:25",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
                "typeString": "struct CommandList.commandMap"
              }
            },
            "value": null,
            "visibility": "internal"
          },
          {
            "body": {
              "id": 6007,
              "nodeType": "Block",
              "src": "389:95:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 5999,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 9041,
                          "src": "424:3:25",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 6000,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "424:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6001,
                        "name": "_fromChain",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5986,
                        "src": "436:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6002,
                        "name": "_toChain",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5988,
                        "src": "448:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6003,
                        "name": "_verbs",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5990,
                        "src": "458:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6004,
                        "name": "_payloadHash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5992,
                        "src": "466:12:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 5997,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "408:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 5998,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "insert",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 2915,
                      "src": "408:15:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_bytes32_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address,uint256,uint256,uint256,bytes32) returns (uint256)"
                      }
                    },
                    "id": 6005,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "408:71:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 5996,
                  "id": 6006,
                  "nodeType": "Return",
                  "src": "395:84:25"
                }
              ]
            },
            "documentation": null,
            "id": 6008,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "insert",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 5993,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 5986,
                  "name": "_fromChain",
                  "nodeType": "VariableDeclaration",
                  "scope": 6008,
                  "src": "273:18:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 5985,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "273:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 5988,
                  "name": "_toChain",
                  "nodeType": "VariableDeclaration",
                  "scope": 6008,
                  "src": "297:16:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 5987,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "297:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 5990,
                  "name": "_verbs",
                  "nodeType": "VariableDeclaration",
                  "scope": 6008,
                  "src": "319:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 5989,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "319:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 5992,
                  "name": "_payloadHash",
                  "nodeType": "VariableDeclaration",
                  "scope": 6008,
                  "src": "339:20:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 5991,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "339:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "267:96:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 5996,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 5995,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6008,
                  "src": "380:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 5994,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "380:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "379:9:25"
            },
            "scope": 6267,
            "src": "252:232:25",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6022,
              "nodeType": "Block",
              "src": "538:49:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 6017,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 9041,
                          "src": "565:3:25",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 6018,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "565:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6019,
                        "name": "_idx",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6010,
                        "src": "577:4:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6015,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "551:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6016,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "lock",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3084,
                      "src": "551:13:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address,uint256) returns (bool)"
                      }
                    },
                    "id": 6020,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "551:31:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "functionReturnParameters": 6014,
                  "id": 6021,
                  "nodeType": "Return",
                  "src": "544:38:25"
                }
              ]
            },
            "documentation": null,
            "id": 6023,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "lock",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6011,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6010,
                  "name": "_idx",
                  "nodeType": "VariableDeclaration",
                  "scope": 6023,
                  "src": "502:12:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6009,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "502:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "501:14:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6014,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6013,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6023,
                  "src": "532:4:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 6012,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "532:4:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "531:6:25"
            },
            "scope": 6267,
            "src": "488:99:25",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6037,
              "nodeType": "Block",
              "src": "643:51:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 6032,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 9041,
                          "src": "672:3:25",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 6033,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "672:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6034,
                        "name": "_idx",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6025,
                        "src": "684:4:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6030,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "656:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6031,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "cancel",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3307,
                      "src": "656:15:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address,uint256) returns (bool)"
                      }
                    },
                    "id": 6035,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "656:33:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "functionReturnParameters": 6029,
                  "id": 6036,
                  "nodeType": "Return",
                  "src": "649:40:25"
                }
              ]
            },
            "documentation": null,
            "id": 6038,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "cancel",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6026,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6025,
                  "name": "_idx",
                  "nodeType": "VariableDeclaration",
                  "scope": 6038,
                  "src": "607:12:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6024,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "607:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "606:14:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6029,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6028,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6038,
                  "src": "637:4:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 6027,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "637:4:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "636:6:25"
            },
            "scope": 6267,
            "src": "591:103:25",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6052,
              "nodeType": "Block",
              "src": "752:53:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 6047,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 9041,
                          "src": "783:3:25",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 6048,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "783:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6049,
                        "name": "_idx",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6040,
                        "src": "795:4:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6045,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "765:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6046,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "complete",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3418,
                      "src": "765:17:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address,uint256) returns (bool)"
                      }
                    },
                    "id": 6050,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "765:35:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "functionReturnParameters": 6044,
                  "id": 6051,
                  "nodeType": "Return",
                  "src": "758:42:25"
                }
              ]
            },
            "documentation": null,
            "id": 6053,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "complete",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6041,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6040,
                  "name": "_idx",
                  "nodeType": "VariableDeclaration",
                  "scope": 6053,
                  "src": "716:12:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6039,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "716:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "715:14:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6044,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6043,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6053,
                  "src": "746:4:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 6042,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "746:4:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "745:6:25"
            },
            "scope": 6267,
            "src": "698:107:25",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6062,
              "nodeType": "Block",
              "src": "856:34:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6058,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "869:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6059,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "count",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3430,
                      "src": "869:14:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer) view returns (uint256)"
                      }
                    },
                    "id": 6060,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "869:16:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 6057,
                  "id": 6061,
                  "nodeType": "Return",
                  "src": "862:23:25"
                }
              ]
            },
            "documentation": null,
            "id": 6063,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "count",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6054,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "823:2:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6057,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6056,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6063,
                  "src": "847:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6055,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "847:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "846:9:25"
            },
            "scope": 6267,
            "src": "809:81:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6072,
              "nodeType": "Block",
              "src": "948:41:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6068,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "961:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6069,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "countWaiting",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3442,
                      "src": "961:21:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer) view returns (uint256)"
                      }
                    },
                    "id": 6070,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "961:23:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 6067,
                  "id": 6071,
                  "nodeType": "Return",
                  "src": "954:30:25"
                }
              ]
            },
            "documentation": null,
            "id": 6073,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "countWaiting",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6064,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "915:2:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6067,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6066,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6073,
                  "src": "939:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6065,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "939:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "938:9:25"
            },
            "scope": 6267,
            "src": "894:95:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6082,
              "nodeType": "Block",
              "src": "1047:41:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6078,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1060:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6079,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "countLocking",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3454,
                      "src": "1060:21:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer) view returns (uint256)"
                      }
                    },
                    "id": 6080,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1060:23:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 6077,
                  "id": 6081,
                  "nodeType": "Return",
                  "src": "1053:30:25"
                }
              ]
            },
            "documentation": null,
            "id": 6083,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "countLocking",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6074,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1014:2:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6077,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6076,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6083,
                  "src": "1038:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6075,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1038:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1037:9:25"
            },
            "scope": 6267,
            "src": "993:95:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6092,
              "nodeType": "Block",
              "src": "1147:42:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6088,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1160:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6089,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "countCanceled",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3466,
                      "src": "1160:22:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer) view returns (uint256)"
                      }
                    },
                    "id": 6090,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1160:24:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 6087,
                  "id": 6091,
                  "nodeType": "Return",
                  "src": "1153:31:25"
                }
              ]
            },
            "documentation": null,
            "id": 6093,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "countCanceled",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6084,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1114:2:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6087,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6086,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6093,
                  "src": "1138:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6085,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1138:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1137:9:25"
            },
            "scope": 6267,
            "src": "1092:97:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6102,
              "nodeType": "Block",
              "src": "1249:43:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6098,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1262:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6099,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "countCompleted",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3478,
                      "src": "1262:23:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer) view returns (uint256)"
                      }
                    },
                    "id": 6100,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1262:25:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 6097,
                  "id": 6101,
                  "nodeType": "Return",
                  "src": "1255:32:25"
                }
              ]
            },
            "documentation": null,
            "id": 6103,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "countCompleted",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6094,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1216:2:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6097,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6096,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6103,
                  "src": "1240:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6095,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1240:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1239:9:25"
            },
            "scope": 6267,
            "src": "1193:99:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6115,
              "nodeType": "Block",
              "src": "1372:55:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6112,
                        "name": "_submitter",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6105,
                        "src": "1411:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6110,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1385:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6111,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "countBySubmitter",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3494,
                      "src": "1385:25:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address) view returns (uint256)"
                      }
                    },
                    "id": 6113,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1385:37:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 6109,
                  "id": 6114,
                  "nodeType": "Return",
                  "src": "1378:44:25"
                }
              ]
            },
            "documentation": null,
            "id": 6116,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "countBySubmitter",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6106,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6105,
                  "name": "_submitter",
                  "nodeType": "VariableDeclaration",
                  "scope": 6116,
                  "src": "1322:18:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6104,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1322:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1321:20:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6109,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6108,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6116,
                  "src": "1363:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6107,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1363:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1362:9:25"
            },
            "scope": 6267,
            "src": "1296:131:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6128,
              "nodeType": "Block",
              "src": "1499:47:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6125,
                        "name": "_agent",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6118,
                        "src": "1534:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6123,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1512:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6124,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "countByAgent",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3510,
                      "src": "1512:21:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address) view returns (uint256)"
                      }
                    },
                    "id": 6126,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1512:29:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 6122,
                  "id": 6127,
                  "nodeType": "Return",
                  "src": "1505:36:25"
                }
              ]
            },
            "documentation": null,
            "id": 6129,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "countByAgent",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6119,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6118,
                  "name": "_agent",
                  "nodeType": "VariableDeclaration",
                  "scope": 6129,
                  "src": "1453:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6117,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1453:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1452:16:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6122,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6121,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6129,
                  "src": "1490:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6120,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1490:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1489:9:25"
            },
            "scope": 6267,
            "src": "1431:115:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6141,
              "nodeType": "Block",
              "src": "1624:41:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6138,
                        "name": "_idx",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6131,
                        "src": "1655:4:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6136,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1637:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6137,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getByIdx",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3534,
                      "src": "1637:17:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_uint256_$returns$_t_struct$_element_$2771_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,uint256) view returns (struct CommandList.element memory)"
                      }
                    },
                    "id": 6139,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1637:23:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_element_$2771_memory_ptr",
                      "typeString": "struct CommandList.element memory"
                    }
                  },
                  "functionReturnParameters": 6135,
                  "id": 6140,
                  "nodeType": "Return",
                  "src": "1630:30:25"
                }
              ]
            },
            "documentation": null,
            "id": 6142,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getByIdx",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6132,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6131,
                  "name": "_idx",
                  "nodeType": "VariableDeclaration",
                  "scope": 6142,
                  "src": "1568:12:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6130,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1568:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1567:14:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6135,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6134,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6142,
                  "src": "1603:19:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_element_$2771_memory_ptr",
                    "typeString": "struct CommandList.element"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 6133,
                    "name": "CommandList.element",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 2771,
                    "src": "1603:19:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_element_$2771_storage_ptr",
                      "typeString": "struct CommandList.element"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1602:21:25"
            },
            "scope": 6267,
            "src": "1550:115:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6155,
              "nodeType": "Block",
              "src": "1762:56:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6152,
                        "name": "_submitter",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6144,
                        "src": "1802:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6150,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1775:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6151,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getIdxBySubmitter",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3550,
                      "src": "1775:26:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address) view returns (uint256[] memory)"
                      }
                    },
                    "id": 6153,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1775:38:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                      "typeString": "uint256[] memory"
                    }
                  },
                  "functionReturnParameters": 6149,
                  "id": 6154,
                  "nodeType": "Return",
                  "src": "1768:45:25"
                }
              ]
            },
            "documentation": null,
            "id": 6156,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getIdxBySubmitter",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6145,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6144,
                  "name": "_submitter",
                  "nodeType": "VariableDeclaration",
                  "scope": 6156,
                  "src": "1696:18:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6143,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1696:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1695:20:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6149,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6148,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6156,
                  "src": "1749:9:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 6146,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "1749:7:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 6147,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1749:9:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1748:11:25"
            },
            "scope": 6267,
            "src": "1669:149:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6169,
              "nodeType": "Block",
              "src": "1893:48:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6166,
                        "name": "_agent",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6158,
                        "src": "1929:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6164,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1906:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6165,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getIdxByAgent",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3566,
                      "src": "1906:22:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address) view returns (uint256[] memory)"
                      }
                    },
                    "id": 6167,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1906:30:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                      "typeString": "uint256[] memory"
                    }
                  },
                  "functionReturnParameters": 6163,
                  "id": 6168,
                  "nodeType": "Return",
                  "src": "1899:37:25"
                }
              ]
            },
            "documentation": null,
            "id": 6170,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getIdxByAgent",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6159,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6158,
                  "name": "_agent",
                  "nodeType": "VariableDeclaration",
                  "scope": 6170,
                  "src": "1845:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6157,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1845:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1844:16:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6163,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6162,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6170,
                  "src": "1882:9:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 6160,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "1882:7:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 6161,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1882:9:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1881:11:25"
            },
            "scope": 6267,
            "src": "1822:119:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6180,
              "nodeType": "Block",
              "src": "2002:42:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6176,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "2015:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6177,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getWaitingIdx",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3578,
                      "src": "2015:22:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer) view returns (uint256[] memory)"
                      }
                    },
                    "id": 6178,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2015:24:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                      "typeString": "uint256[] memory"
                    }
                  },
                  "functionReturnParameters": 6175,
                  "id": 6179,
                  "nodeType": "Return",
                  "src": "2008:31:25"
                }
              ]
            },
            "documentation": null,
            "id": 6181,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getWaitingIdx",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6171,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1967:2:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6175,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6174,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6181,
                  "src": "1991:9:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 6172,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "1991:7:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 6173,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1991:9:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1990:11:25"
            },
            "scope": 6267,
            "src": "1945:99:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6191,
              "nodeType": "Block",
              "src": "2105:42:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6187,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "2118:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6188,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getLockingIdx",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3590,
                      "src": "2118:22:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer) view returns (uint256[] memory)"
                      }
                    },
                    "id": 6189,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2118:24:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                      "typeString": "uint256[] memory"
                    }
                  },
                  "functionReturnParameters": 6186,
                  "id": 6190,
                  "nodeType": "Return",
                  "src": "2111:31:25"
                }
              ]
            },
            "documentation": null,
            "id": 6192,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getLockingIdx",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6182,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2070:2:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6186,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6185,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6192,
                  "src": "2094:9:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 6183,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "2094:7:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 6184,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "2094:9:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2093:11:25"
            },
            "scope": 6267,
            "src": "2048:99:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6211,
              "nodeType": "Block",
              "src": "2293:68:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6206,
                        "name": "_submitter",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6194,
                        "src": "2330:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6207,
                        "name": "_from",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6196,
                        "src": "2342:5:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6208,
                        "name": "_count",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6198,
                        "src": "2349:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6204,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "2306:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6205,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getBySubmitter",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3692,
                      "src": "2306:23:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
                      }
                    },
                    "id": 6209,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2306:50:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
                      "typeString": "struct CommandList.element memory[] memory"
                    }
                  },
                  "functionReturnParameters": 6203,
                  "id": 6210,
                  "nodeType": "Return",
                  "src": "2299:57:25"
                }
              ]
            },
            "documentation": null,
            "id": 6212,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getBySubmitter",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6199,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6194,
                  "name": "_submitter",
                  "nodeType": "VariableDeclaration",
                  "scope": 6212,
                  "src": "2180:18:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6193,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2180:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6196,
                  "name": "_from",
                  "nodeType": "VariableDeclaration",
                  "scope": 6212,
                  "src": "2204:13:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6195,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2204:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6198,
                  "name": "_count",
                  "nodeType": "VariableDeclaration",
                  "scope": 6212,
                  "src": "2223:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6197,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2223:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2174:67:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6203,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6202,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6212,
                  "src": "2263:21:25",
                  "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": 6200,
                      "name": "CommandList.element",
                      "nodeType": "UserDefinedTypeName",
                      "referencedDeclaration": 2771,
                      "src": "2263:19:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_element_$2771_storage_ptr",
                        "typeString": "struct CommandList.element"
                      }
                    },
                    "id": 6201,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "2263:21:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
                      "typeString": "struct CommandList.element[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2262:30:25"
            },
            "scope": 6267,
            "src": "2151:210:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6231,
              "nodeType": "Block",
              "src": "2499:60:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6226,
                        "name": "_agent",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6214,
                        "src": "2532:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6227,
                        "name": "_from",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6216,
                        "src": "2540:5:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6228,
                        "name": "_count",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6218,
                        "src": "2547:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6224,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "2512:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6225,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getByAgent",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3717,
                      "src": "2512:19:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
                      }
                    },
                    "id": 6229,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2512:42:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
                      "typeString": "struct CommandList.element memory[] memory"
                    }
                  },
                  "functionReturnParameters": 6223,
                  "id": 6230,
                  "nodeType": "Return",
                  "src": "2505:49:25"
                }
              ]
            },
            "documentation": null,
            "id": 6232,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getByAgent",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6219,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6214,
                  "name": "_agent",
                  "nodeType": "VariableDeclaration",
                  "scope": 6232,
                  "src": "2390:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6213,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2390:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6216,
                  "name": "_from",
                  "nodeType": "VariableDeclaration",
                  "scope": 6232,
                  "src": "2410:13:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6215,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2410:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6218,
                  "name": "_count",
                  "nodeType": "VariableDeclaration",
                  "scope": 6232,
                  "src": "2429:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6217,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2429:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2384:63:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6223,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6222,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6232,
                  "src": "2469:21:25",
                  "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": 6220,
                      "name": "CommandList.element",
                      "nodeType": "UserDefinedTypeName",
                      "referencedDeclaration": 2771,
                      "src": "2469:19:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_element_$2771_storage_ptr",
                        "typeString": "struct CommandList.element"
                      }
                    },
                    "id": 6221,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "2469:21:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
                      "typeString": "struct CommandList.element[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2468:30:25"
            },
            "scope": 6267,
            "src": "2365:194:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6248,
              "nodeType": "Block",
              "src": "2682:55:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6244,
                        "name": "_from",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6234,
                        "src": "2718:5:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6245,
                        "name": "_count",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6236,
                        "src": "2725:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6242,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "2695:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6243,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getByCanceled",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3738,
                      "src": "2695:22:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
                      }
                    },
                    "id": 6246,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2695:37:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
                      "typeString": "struct CommandList.element memory[] memory"
                    }
                  },
                  "functionReturnParameters": 6241,
                  "id": 6247,
                  "nodeType": "Return",
                  "src": "2688:44:25"
                }
              ]
            },
            "documentation": null,
            "id": 6249,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getByCanceled",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6237,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6234,
                  "name": "_from",
                  "nodeType": "VariableDeclaration",
                  "scope": 6249,
                  "src": "2586:13:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6233,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2586:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6236,
                  "name": "_count",
                  "nodeType": "VariableDeclaration",
                  "scope": 6249,
                  "src": "2601:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6235,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2601:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2585:31:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6241,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6240,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6249,
                  "src": "2650:21:25",
                  "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": 6238,
                      "name": "CommandList.element",
                      "nodeType": "UserDefinedTypeName",
                      "referencedDeclaration": 2771,
                      "src": "2650:19:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_element_$2771_storage_ptr",
                        "typeString": "struct CommandList.element"
                      }
                    },
                    "id": 6239,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "2650:21:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
                      "typeString": "struct CommandList.element[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2649:30:25"
            },
            "scope": 6267,
            "src": "2563:174:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6265,
              "nodeType": "Block",
              "src": "2861:56:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6261,
                        "name": "_from",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6251,
                        "src": "2898:5:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6262,
                        "name": "_count",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6253,
                        "src": "2905:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6259,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "2874:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6260,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getByCompleted",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3759,
                      "src": "2874:23:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
                      }
                    },
                    "id": 6263,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2874:38:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
                      "typeString": "struct CommandList.element memory[] memory"
                    }
                  },
                  "functionReturnParameters": 6258,
                  "id": 6264,
                  "nodeType": "Return",
                  "src": "2867:45:25"
                }
              ]
            },
            "documentation": null,
            "id": 6266,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getByCompleted",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6254,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6251,
                  "name": "_from",
                  "nodeType": "VariableDeclaration",
                  "scope": 6266,
                  "src": "2765:13:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6250,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2765:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6253,
                  "name": "_count",
                  "nodeType": "VariableDeclaration",
                  "scope": 6266,
                  "src": "2780:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6252,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2780:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2764:31:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6258,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6257,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6266,
                  "src": "2829:21:25",
                  "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": 6255,
                      "name": "CommandList.element",
                      "nodeType": "UserDefinedTypeName",
                      "referencedDeclaration": 2771,
                      "src": "2829:19:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_element_$2771_storage_ptr",
                        "typeString": "struct CommandList.element"
                      }
                    },
                    "id": 6256,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "2829:21:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
                      "typeString": "struct CommandList.element[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2828:30:25"
            },
            "scope": 6267,
            "src": "2741:176:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          }
        ],
        "scope": 6268,
        "src": "138:2781:25"
      }
    ],
    "src": "0:2920:25"
  },
  "legacyAST": {
    "absolutePath": "/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/mock/MockCommandList.sol",
    "exportedSymbols": {
      "MockCommandList": [
        6267
      ]
    },
    "id": 6268,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 5977,
        "literals": [
          "solidity",
          ">=",
          "0.4",
          ".24"
        ],
        "nodeType": "PragmaDirective",
        "src": "0:25:25"
      },
      {
        "id": 5978,
        "literals": [
          "experimental",
          "ABIEncoderV2"
        ],
        "nodeType": "PragmaDirective",
        "src": "26:33:25"
      },
      {
        "absolutePath": "/Users/chtian/Documents/01_work/01_develope/jcc/jcc-solidity-utils/contracts/list/CommandList.sol",
        "file": "../list/CommandList.sol",
        "id": 5979,
        "nodeType": "ImportDirective",
        "scope": 6268,
        "sourceUnit": 3761,
        "src": "61:33:25",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [],
        "contractDependencies": [],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": true,
        "id": 6267,
        "linearizedBaseContracts": [
          6267
        ],
        "name": "MockCommandList",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "id": 5982,
            "libraryName": {
              "contractScope": null,
              "id": 5980,
              "name": "CommandList",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 3760,
              "src": "173:11:25",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_CommandList_$3760",
                "typeString": "library CommandList"
              }
            },
            "nodeType": "UsingForDirective",
            "src": "167:45:25",
            "typeName": {
              "contractScope": null,
              "id": 5981,
              "name": "CommandList.commandMap",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 2797,
              "src": "189:22:25",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
                "typeString": "struct CommandList.commandMap"
              }
            }
          },
          {
            "constant": false,
            "id": 5984,
            "name": "commands",
            "nodeType": "VariableDeclaration",
            "scope": 6267,
            "src": "216:31:25",
            "stateVariable": true,
            "storageLocation": "default",
            "typeDescriptions": {
              "typeIdentifier": "t_struct$_commandMap_$2797_storage",
              "typeString": "struct CommandList.commandMap"
            },
            "typeName": {
              "contractScope": null,
              "id": 5983,
              "name": "CommandList.commandMap",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 2797,
              "src": "216:22:25",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_commandMap_$2797_storage_ptr",
                "typeString": "struct CommandList.commandMap"
              }
            },
            "value": null,
            "visibility": "internal"
          },
          {
            "body": {
              "id": 6007,
              "nodeType": "Block",
              "src": "389:95:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 5999,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 9041,
                          "src": "424:3:25",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 6000,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "424:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6001,
                        "name": "_fromChain",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5986,
                        "src": "436:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6002,
                        "name": "_toChain",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5988,
                        "src": "448:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6003,
                        "name": "_verbs",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5990,
                        "src": "458:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6004,
                        "name": "_payloadHash",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5992,
                        "src": "466:12:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 5997,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "408:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 5998,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "insert",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 2915,
                      "src": "408:15:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_bytes32_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address,uint256,uint256,uint256,bytes32) returns (uint256)"
                      }
                    },
                    "id": 6005,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "408:71:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 5996,
                  "id": 6006,
                  "nodeType": "Return",
                  "src": "395:84:25"
                }
              ]
            },
            "documentation": null,
            "id": 6008,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "insert",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 5993,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 5986,
                  "name": "_fromChain",
                  "nodeType": "VariableDeclaration",
                  "scope": 6008,
                  "src": "273:18:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 5985,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "273:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 5988,
                  "name": "_toChain",
                  "nodeType": "VariableDeclaration",
                  "scope": 6008,
                  "src": "297:16:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 5987,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "297:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 5990,
                  "name": "_verbs",
                  "nodeType": "VariableDeclaration",
                  "scope": 6008,
                  "src": "319:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 5989,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "319:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 5992,
                  "name": "_payloadHash",
                  "nodeType": "VariableDeclaration",
                  "scope": 6008,
                  "src": "339:20:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 5991,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "339:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "267:96:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 5996,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 5995,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6008,
                  "src": "380:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 5994,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "380:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "379:9:25"
            },
            "scope": 6267,
            "src": "252:232:25",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6022,
              "nodeType": "Block",
              "src": "538:49:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 6017,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 9041,
                          "src": "565:3:25",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 6018,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "565:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6019,
                        "name": "_idx",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6010,
                        "src": "577:4:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6015,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "551:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6016,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "lock",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3084,
                      "src": "551:13:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address,uint256) returns (bool)"
                      }
                    },
                    "id": 6020,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "551:31:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "functionReturnParameters": 6014,
                  "id": 6021,
                  "nodeType": "Return",
                  "src": "544:38:25"
                }
              ]
            },
            "documentation": null,
            "id": 6023,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "lock",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6011,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6010,
                  "name": "_idx",
                  "nodeType": "VariableDeclaration",
                  "scope": 6023,
                  "src": "502:12:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6009,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "502:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "501:14:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6014,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6013,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6023,
                  "src": "532:4:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 6012,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "532:4:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "531:6:25"
            },
            "scope": 6267,
            "src": "488:99:25",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6037,
              "nodeType": "Block",
              "src": "643:51:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 6032,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 9041,
                          "src": "672:3:25",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 6033,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "672:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6034,
                        "name": "_idx",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6025,
                        "src": "684:4:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6030,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "656:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6031,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "cancel",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3307,
                      "src": "656:15:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address,uint256) returns (bool)"
                      }
                    },
                    "id": 6035,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "656:33:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "functionReturnParameters": 6029,
                  "id": 6036,
                  "nodeType": "Return",
                  "src": "649:40:25"
                }
              ]
            },
            "documentation": null,
            "id": 6038,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "cancel",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6026,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6025,
                  "name": "_idx",
                  "nodeType": "VariableDeclaration",
                  "scope": 6038,
                  "src": "607:12:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6024,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "607:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "606:14:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6029,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6028,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6038,
                  "src": "637:4:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 6027,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "637:4:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "636:6:25"
            },
            "scope": 6267,
            "src": "591:103:25",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6052,
              "nodeType": "Block",
              "src": "752:53:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "id": 6047,
                          "name": "msg",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 9041,
                          "src": "783:3:25",
                          "typeDescriptions": {
                            "typeIdentifier": "t_magic_message",
                            "typeString": "msg"
                          }
                        },
                        "id": 6048,
                        "isConstant": false,
                        "isLValue": false,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "sender",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": null,
                        "src": "783:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6049,
                        "name": "_idx",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6040,
                        "src": "795:4:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6045,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "765:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6046,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "complete",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3418,
                      "src": "765:17:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_nonpayable$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$_t_uint256_$returns$_t_bool_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address,uint256) returns (bool)"
                      }
                    },
                    "id": 6050,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "765:35:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "functionReturnParameters": 6044,
                  "id": 6051,
                  "nodeType": "Return",
                  "src": "758:42:25"
                }
              ]
            },
            "documentation": null,
            "id": 6053,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "complete",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6041,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6040,
                  "name": "_idx",
                  "nodeType": "VariableDeclaration",
                  "scope": 6053,
                  "src": "716:12:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6039,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "716:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "715:14:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6044,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6043,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6053,
                  "src": "746:4:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 6042,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "746:4:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "745:6:25"
            },
            "scope": 6267,
            "src": "698:107:25",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6062,
              "nodeType": "Block",
              "src": "856:34:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6058,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "869:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6059,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "count",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3430,
                      "src": "869:14:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer) view returns (uint256)"
                      }
                    },
                    "id": 6060,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "869:16:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 6057,
                  "id": 6061,
                  "nodeType": "Return",
                  "src": "862:23:25"
                }
              ]
            },
            "documentation": null,
            "id": 6063,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "count",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6054,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "823:2:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6057,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6056,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6063,
                  "src": "847:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6055,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "847:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "846:9:25"
            },
            "scope": 6267,
            "src": "809:81:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6072,
              "nodeType": "Block",
              "src": "948:41:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6068,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "961:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6069,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "countWaiting",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3442,
                      "src": "961:21:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer) view returns (uint256)"
                      }
                    },
                    "id": 6070,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "961:23:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 6067,
                  "id": 6071,
                  "nodeType": "Return",
                  "src": "954:30:25"
                }
              ]
            },
            "documentation": null,
            "id": 6073,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "countWaiting",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6064,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "915:2:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6067,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6066,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6073,
                  "src": "939:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6065,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "939:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "938:9:25"
            },
            "scope": 6267,
            "src": "894:95:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6082,
              "nodeType": "Block",
              "src": "1047:41:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6078,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1060:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6079,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "countLocking",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3454,
                      "src": "1060:21:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer) view returns (uint256)"
                      }
                    },
                    "id": 6080,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1060:23:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 6077,
                  "id": 6081,
                  "nodeType": "Return",
                  "src": "1053:30:25"
                }
              ]
            },
            "documentation": null,
            "id": 6083,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "countLocking",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6074,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1014:2:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6077,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6076,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6083,
                  "src": "1038:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6075,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1038:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1037:9:25"
            },
            "scope": 6267,
            "src": "993:95:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6092,
              "nodeType": "Block",
              "src": "1147:42:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6088,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1160:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6089,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "countCanceled",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3466,
                      "src": "1160:22:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer) view returns (uint256)"
                      }
                    },
                    "id": 6090,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1160:24:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 6087,
                  "id": 6091,
                  "nodeType": "Return",
                  "src": "1153:31:25"
                }
              ]
            },
            "documentation": null,
            "id": 6093,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "countCanceled",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6084,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1114:2:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6087,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6086,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6093,
                  "src": "1138:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6085,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1138:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1137:9:25"
            },
            "scope": 6267,
            "src": "1092:97:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6102,
              "nodeType": "Block",
              "src": "1249:43:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6098,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1262:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6099,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "countCompleted",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3478,
                      "src": "1262:23:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer) view returns (uint256)"
                      }
                    },
                    "id": 6100,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1262:25:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 6097,
                  "id": 6101,
                  "nodeType": "Return",
                  "src": "1255:32:25"
                }
              ]
            },
            "documentation": null,
            "id": 6103,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "countCompleted",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6094,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1216:2:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6097,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6096,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6103,
                  "src": "1240:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6095,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1240:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1239:9:25"
            },
            "scope": 6267,
            "src": "1193:99:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6115,
              "nodeType": "Block",
              "src": "1372:55:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6112,
                        "name": "_submitter",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6105,
                        "src": "1411:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6110,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1385:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6111,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "countBySubmitter",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3494,
                      "src": "1385:25:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address) view returns (uint256)"
                      }
                    },
                    "id": 6113,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1385:37:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 6109,
                  "id": 6114,
                  "nodeType": "Return",
                  "src": "1378:44:25"
                }
              ]
            },
            "documentation": null,
            "id": 6116,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "countBySubmitter",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6106,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6105,
                  "name": "_submitter",
                  "nodeType": "VariableDeclaration",
                  "scope": 6116,
                  "src": "1322:18:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6104,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1322:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1321:20:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6109,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6108,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6116,
                  "src": "1363:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6107,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1363:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1362:9:25"
            },
            "scope": 6267,
            "src": "1296:131:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6128,
              "nodeType": "Block",
              "src": "1499:47:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6125,
                        "name": "_agent",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6118,
                        "src": "1534:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6123,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1512:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6124,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "countByAgent",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3510,
                      "src": "1512:21:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$returns$_t_uint256_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address) view returns (uint256)"
                      }
                    },
                    "id": 6126,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1512:29:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "functionReturnParameters": 6122,
                  "id": 6127,
                  "nodeType": "Return",
                  "src": "1505:36:25"
                }
              ]
            },
            "documentation": null,
            "id": 6129,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "countByAgent",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6119,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6118,
                  "name": "_agent",
                  "nodeType": "VariableDeclaration",
                  "scope": 6129,
                  "src": "1453:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6117,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1453:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1452:16:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6122,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6121,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6129,
                  "src": "1490:7:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6120,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1490:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1489:9:25"
            },
            "scope": 6267,
            "src": "1431:115:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6141,
              "nodeType": "Block",
              "src": "1624:41:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6138,
                        "name": "_idx",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6131,
                        "src": "1655:4:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6136,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1637:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6137,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getByIdx",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3534,
                      "src": "1637:17:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_uint256_$returns$_t_struct$_element_$2771_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,uint256) view returns (struct CommandList.element memory)"
                      }
                    },
                    "id": 6139,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1637:23:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_element_$2771_memory_ptr",
                      "typeString": "struct CommandList.element memory"
                    }
                  },
                  "functionReturnParameters": 6135,
                  "id": 6140,
                  "nodeType": "Return",
                  "src": "1630:30:25"
                }
              ]
            },
            "documentation": null,
            "id": 6142,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getByIdx",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6132,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6131,
                  "name": "_idx",
                  "nodeType": "VariableDeclaration",
                  "scope": 6142,
                  "src": "1568:12:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6130,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1568:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1567:14:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6135,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6134,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6142,
                  "src": "1603:19:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_struct$_element_$2771_memory_ptr",
                    "typeString": "struct CommandList.element"
                  },
                  "typeName": {
                    "contractScope": null,
                    "id": 6133,
                    "name": "CommandList.element",
                    "nodeType": "UserDefinedTypeName",
                    "referencedDeclaration": 2771,
                    "src": "1603:19:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_element_$2771_storage_ptr",
                      "typeString": "struct CommandList.element"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1602:21:25"
            },
            "scope": 6267,
            "src": "1550:115:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6155,
              "nodeType": "Block",
              "src": "1762:56:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6152,
                        "name": "_submitter",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6144,
                        "src": "1802:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6150,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1775:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6151,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getIdxBySubmitter",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3550,
                      "src": "1775:26:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address) view returns (uint256[] memory)"
                      }
                    },
                    "id": 6153,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1775:38:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                      "typeString": "uint256[] memory"
                    }
                  },
                  "functionReturnParameters": 6149,
                  "id": 6154,
                  "nodeType": "Return",
                  "src": "1768:45:25"
                }
              ]
            },
            "documentation": null,
            "id": 6156,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getIdxBySubmitter",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6145,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6144,
                  "name": "_submitter",
                  "nodeType": "VariableDeclaration",
                  "scope": 6156,
                  "src": "1696:18:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6143,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1696:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1695:20:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6149,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6148,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6156,
                  "src": "1749:9:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 6146,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "1749:7:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 6147,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1749:9:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1748:11:25"
            },
            "scope": 6267,
            "src": "1669:149:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6169,
              "nodeType": "Block",
              "src": "1893:48:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6166,
                        "name": "_agent",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6158,
                        "src": "1929:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6164,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "1906:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6165,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getIdxByAgent",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3566,
                      "src": "1906:22:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address) view returns (uint256[] memory)"
                      }
                    },
                    "id": 6167,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1906:30:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                      "typeString": "uint256[] memory"
                    }
                  },
                  "functionReturnParameters": 6163,
                  "id": 6168,
                  "nodeType": "Return",
                  "src": "1899:37:25"
                }
              ]
            },
            "documentation": null,
            "id": 6170,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getIdxByAgent",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6159,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6158,
                  "name": "_agent",
                  "nodeType": "VariableDeclaration",
                  "scope": 6170,
                  "src": "1845:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6157,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "1845:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1844:16:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6163,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6162,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6170,
                  "src": "1882:9:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 6160,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "1882:7:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 6161,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1882:9:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1881:11:25"
            },
            "scope": 6267,
            "src": "1822:119:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6180,
              "nodeType": "Block",
              "src": "2002:42:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6176,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "2015:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6177,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getWaitingIdx",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3578,
                      "src": "2015:22:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer) view returns (uint256[] memory)"
                      }
                    },
                    "id": 6178,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2015:24:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                      "typeString": "uint256[] memory"
                    }
                  },
                  "functionReturnParameters": 6175,
                  "id": 6179,
                  "nodeType": "Return",
                  "src": "2008:31:25"
                }
              ]
            },
            "documentation": null,
            "id": 6181,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getWaitingIdx",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6171,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1967:2:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6175,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6174,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6181,
                  "src": "1991:9:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 6172,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "1991:7:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 6173,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "1991:9:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "1990:11:25"
            },
            "scope": 6267,
            "src": "1945:99:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6191,
              "nodeType": "Block",
              "src": "2105:42:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [],
                    "expression": {
                      "argumentTypes": [],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6187,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "2118:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6188,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getLockingIdx",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3590,
                      "src": "2118:22:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$returns$_t_array$_t_uint256_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer) view returns (uint256[] memory)"
                      }
                    },
                    "id": 6189,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2118:24:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                      "typeString": "uint256[] memory"
                    }
                  },
                  "functionReturnParameters": 6186,
                  "id": 6190,
                  "nodeType": "Return",
                  "src": "2111:31:25"
                }
              ]
            },
            "documentation": null,
            "id": 6192,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getLockingIdx",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6182,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "2070:2:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6186,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6185,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6192,
                  "src": "2094:9:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 6183,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "2094:7:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 6184,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "2094:9:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2093:11:25"
            },
            "scope": 6267,
            "src": "2048:99:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6211,
              "nodeType": "Block",
              "src": "2293:68:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6206,
                        "name": "_submitter",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6194,
                        "src": "2330:10:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6207,
                        "name": "_from",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6196,
                        "src": "2342:5:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6208,
                        "name": "_count",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6198,
                        "src": "2349:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6204,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "2306:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6205,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getBySubmitter",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3692,
                      "src": "2306:23:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
                      }
                    },
                    "id": 6209,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2306:50:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
                      "typeString": "struct CommandList.element memory[] memory"
                    }
                  },
                  "functionReturnParameters": 6203,
                  "id": 6210,
                  "nodeType": "Return",
                  "src": "2299:57:25"
                }
              ]
            },
            "documentation": null,
            "id": 6212,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getBySubmitter",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6199,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6194,
                  "name": "_submitter",
                  "nodeType": "VariableDeclaration",
                  "scope": 6212,
                  "src": "2180:18:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6193,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2180:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6196,
                  "name": "_from",
                  "nodeType": "VariableDeclaration",
                  "scope": 6212,
                  "src": "2204:13:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6195,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2204:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6198,
                  "name": "_count",
                  "nodeType": "VariableDeclaration",
                  "scope": 6212,
                  "src": "2223:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6197,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2223:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2174:67:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6203,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6202,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6212,
                  "src": "2263:21:25",
                  "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": 6200,
                      "name": "CommandList.element",
                      "nodeType": "UserDefinedTypeName",
                      "referencedDeclaration": 2771,
                      "src": "2263:19:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_element_$2771_storage_ptr",
                        "typeString": "struct CommandList.element"
                      }
                    },
                    "id": 6201,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "2263:21:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
                      "typeString": "struct CommandList.element[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2262:30:25"
            },
            "scope": 6267,
            "src": "2151:210:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6231,
              "nodeType": "Block",
              "src": "2499:60:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6226,
                        "name": "_agent",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6214,
                        "src": "2532:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6227,
                        "name": "_from",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6216,
                        "src": "2540:5:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6228,
                        "name": "_count",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6218,
                        "src": "2547:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_address",
                          "typeString": "address"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6224,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "2512:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6225,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getByAgent",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3717,
                      "src": "2512:19:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_address_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,address,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
                      }
                    },
                    "id": 6229,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2512:42:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
                      "typeString": "struct CommandList.element memory[] memory"
                    }
                  },
                  "functionReturnParameters": 6223,
                  "id": 6230,
                  "nodeType": "Return",
                  "src": "2505:49:25"
                }
              ]
            },
            "documentation": null,
            "id": 6232,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getByAgent",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6219,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6214,
                  "name": "_agent",
                  "nodeType": "VariableDeclaration",
                  "scope": 6232,
                  "src": "2390:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 6213,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2390:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6216,
                  "name": "_from",
                  "nodeType": "VariableDeclaration",
                  "scope": 6232,
                  "src": "2410:13:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6215,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2410:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6218,
                  "name": "_count",
                  "nodeType": "VariableDeclaration",
                  "scope": 6232,
                  "src": "2429:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6217,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2429:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2384:63:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6223,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6222,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6232,
                  "src": "2469:21:25",
                  "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": 6220,
                      "name": "CommandList.element",
                      "nodeType": "UserDefinedTypeName",
                      "referencedDeclaration": 2771,
                      "src": "2469:19:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_element_$2771_storage_ptr",
                        "typeString": "struct CommandList.element"
                      }
                    },
                    "id": 6221,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "2469:21:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
                      "typeString": "struct CommandList.element[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2468:30:25"
            },
            "scope": 6267,
            "src": "2365:194:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6248,
              "nodeType": "Block",
              "src": "2682:55:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6244,
                        "name": "_from",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6234,
                        "src": "2718:5:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6245,
                        "name": "_count",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6236,
                        "src": "2725:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6242,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "2695:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6243,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getByCanceled",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3738,
                      "src": "2695:22:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
                      }
                    },
                    "id": 6246,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2695:37:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
                      "typeString": "struct CommandList.element memory[] memory"
                    }
                  },
                  "functionReturnParameters": 6241,
                  "id": 6247,
                  "nodeType": "Return",
                  "src": "2688:44:25"
                }
              ]
            },
            "documentation": null,
            "id": 6249,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getByCanceled",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6237,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6234,
                  "name": "_from",
                  "nodeType": "VariableDeclaration",
                  "scope": 6249,
                  "src": "2586:13:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6233,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2586:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6236,
                  "name": "_count",
                  "nodeType": "VariableDeclaration",
                  "scope": 6249,
                  "src": "2601:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6235,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2601:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2585:31:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6241,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6240,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6249,
                  "src": "2650:21:25",
                  "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": 6238,
                      "name": "CommandList.element",
                      "nodeType": "UserDefinedTypeName",
                      "referencedDeclaration": 2771,
                      "src": "2650:19:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_element_$2771_storage_ptr",
                        "typeString": "struct CommandList.element"
                      }
                    },
                    "id": 6239,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "2650:21:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
                      "typeString": "struct CommandList.element[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2649:30:25"
            },
            "scope": 6267,
            "src": "2563:174:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 6265,
              "nodeType": "Block",
              "src": "2861:56:25",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 6261,
                        "name": "_from",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6251,
                        "src": "2898:5:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      {
                        "argumentTypes": null,
                        "id": 6262,
                        "name": "_count",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 6253,
                        "src": "2905:6:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 6259,
                        "name": "commands",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 5984,
                        "src": "2874:8:25",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_commandMap_$2797_storage",
                          "typeString": "struct CommandList.commandMap storage ref"
                        }
                      },
                      "id": 6260,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "getByCompleted",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 3759,
                      "src": "2874:23:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_internal_view$_t_struct$_commandMap_$2797_storage_ptr_$_t_uint256_$_t_uint256_$returns$_t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr_$bound_to$_t_struct$_commandMap_$2797_storage_ptr_$",
                        "typeString": "function (struct CommandList.commandMap storage pointer,uint256,uint256) view returns (struct CommandList.element memory[] memory)"
                      }
                    },
                    "id": 6263,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "2874:38:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_memory_$dyn_memory_ptr",
                      "typeString": "struct CommandList.element memory[] memory"
                    }
                  },
                  "functionReturnParameters": 6258,
                  "id": 6264,
                  "nodeType": "Return",
                  "src": "2867:45:25"
                }
              ]
            },
            "documentation": null,
            "id": 6266,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": true,
            "modifiers": [],
            "name": "getByCompleted",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 6254,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6251,
                  "name": "_from",
                  "nodeType": "VariableDeclaration",
                  "scope": 6266,
                  "src": "2765:13:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6250,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2765:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 6253,
                  "name": "_count",
                  "nodeType": "VariableDeclaration",
                  "scope": 6266,
                  "src": "2780:14:25",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 6252,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2780:7:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2764:31:25"
            },
            "payable": false,
            "returnParameters": {
              "id": 6258,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 6257,
                  "name": "",
                  "nodeType": "VariableDeclaration",
                  "scope": 6266,
                  "src": "2829:21:25",
                  "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": 6255,
                      "name": "CommandList.element",
                      "nodeType": "UserDefinedTypeName",
                      "referencedDeclaration": 2771,
                      "src": "2829:19:25",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_element_$2771_storage_ptr",
                        "typeString": "struct CommandList.element"
                      }
                    },
                    "id": 6256,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "2829:21:25",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_struct$_element_$2771_storage_$dyn_storage_ptr",
                      "typeString": "struct CommandList.element[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2828:30:25"
            },
            "scope": 6267,
            "src": "2741:176:25",
            "stateMutability": "view",
            "superFunction": null,
            "visibility": "public"
          }
        ],
        "scope": 6268,
        "src": "138:2781:25"
      }
    ],
    "src": "0:2920:25"
  },
  "compiler": {
    "name": "solc",
    "version": "0.4.24+commit.e67f0147.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "3.0.16",
  "updatedAt": "2021-03-06T09:30:01.043Z",
  "devdoc": {
    "methods": {}
  },
  "userdoc": {
    "methods": {}
  }
}